Отчёт о тестировании ClearSQL 9.1.1.124 (далее - CS), опубликованном 21 октября 2019 года, основан на Release Notes. Предыдущая платная версия была выпущена меньше месяца назад. Это значит, что текущий билд содержит некоторые существенные новшества, увеличившие номер минорной версии, даже не релиза или билда. Напомню, что предыдущая мажорная версия готовилась на протяжении полугода, а текущая - лишь тройку недель. Более похоже на то, что какое-то изменение придержали в последний момент, и вот теперь выложили, чтобы продать его подороже.
IMPROVEMENTS 0.8+0.9+0.5+1.7+0.7+0+0+0.5+0+0.7+4.1+1.8+0.5+0=12.2 из 1+2+1+2+1+1+1+1+2+1+5+2+1+1=22, -0.3 за баги
Core 0.8 из 1 возможного
Added the ability to navigate around the project using browser-like back and forward buttons. The navigation history is available from the navigation buttons drop-down lists.
Добавлена возможность навигации по проекту, используя подобие просмоторщика в кнопках назад и вперёд. История перемещений доступна в ниспадающем списке кнопок навигации.
Дерево проекта у реально работающих в CS может быть огромным, а из общих диаграмм проекта или результатов анализа можно перепрыгнуть на любой из скриптов в дереве. При этом бывает довольно сложно вернуться обратно или даже вспомнить, где работал до этого. Новшество довольно полезное, но его реализация абсолютно не интегрирована с другими фичами, например, фильтрацией. Но радует от факт, что история перемещений запоминает не только ноду в дереве, но и соответствовавшую ей закладку с результатами анализа. Удручает лишь кратковременность показа хинта вместо, как сказано, полного ниспадающего списка. Функционал навигации по кликам не нов для продуктов ConquestSS. Обидно только, что подобные полезные функции так долго не копировались в аналогичные приложения. Может теперь не долго уже осталось ждать, когда интерактивный отчёт по проекту приблизится к ClearDB Docu.
Code Editor 0.9+0=0.9 из 2 возможных
Added the ability to navigate to a variable, parameter, local subprogram, local type, subprogram of another package, and dataset by pressing Ctrl+Click on the identifier.
Добавлена возможность навигации на переменные, параметры, локальные подпрограммы, локальные типы, подпрограммы чужих пакетов и объекты данных по нажатию горячих клавиш на идентификаторах.
Почти двадцать лет назад, когда у редактора кода в SQLDetective появилось дерево кода, то появилась возможность и навигировать курсор через горячую клавишу по компонентам текущего кода за счёт прямой связи текста кода с его структурой в дереве. В CS дерево кода тоже существовало изначально, но поскольку редакторы кода в обоих продуктах создавались разными программистами, то тестировщику ужасно сложно было доказать упрямым разработчикам неконсистентность одинаковых модулей в продуктах единой компании ConquestSS. Наконец-то в этом, можно сказать политическом, деле наметились подвижки. С точки зрения программиста этот перенос функционала не составляет никакой сложности, а для обычного пользователя такое удобство несёт массу преимуществ по ускорению и упрощению работы с кодом. Единственное, что меня смутило в тексте RNs - переход на подпрограммы чужих пакетов. В SQLDetective это возможно, поскольку код в редактрах связан со всеми объектами базы через незакрываемый никогда Навигатор Объектов. В CS хоть и есть дерево проекта с именами скриптов, но для перехода на чужие объекты (не имеющиеся в текущем скрипте, но наличествующие в проекте) они должны быть префиксованы истинным именем объекта, а не скрипта. И переход, в отличие от SQLDetective, осуществляется не на объявление подпрограммы в спецификацию пакета или объектного типа, а в его тело на первую строку подпрограммы чужого пакета. Такое неожиданное поведение позволяет снизить балл.
An active line is now always highlighted even if it belongs to a suppressed block.
Активная строка теперь всегда подсвечивается, даже если она в свёрнутом блоке.
Мне абсолютно не удалось увидеть разницу между прошлым и текущим билдами, в обоих редакторах подсветка строки и позиция курсора отображаются идентично. Поэтому этот пункт RNs не могу считать сделанным.
Project Tree 0.5 из 1 возможного
Added the Import and Export commands to the Project Tree pop-up menu.
Команды экспорта и импорта добавлены в контекстное меню дерева проекта.
Глобальная переделка главного меню и сокращение главного тулбара привела к тому, что часть важного функционала пропала с поля зрения юзера. А теперь, возвращая более лёгкий доступ к частоиспользуемым фичам, тех.писательница называет это новшеством, вместо исправления бага регрессии. То есть программист в прошлом билде наворотил бед, а теперь выдаёт это за внедрение удобства пользования. Разве можно за такое не только бесполезное, но и вредоносное коверканье кода и структуры продукта давать балл?
New Project Assistant / Import Wizard / Link Manager 0.7+1=1.7 из 2 возможных
Added a quick filter to instantly filter the file system tree and data object tree. The filter is applied to the already expanded nodes and to those expanded after the filter is applied.
Добавлен быстрый фильтр для моментальной фильтрации дерева файловой системы и дерева объектов данных. Фильтр применяется к уже развёрнутым нодам и к тем, которые разворачивались перед применением фильтра.
Ранее не было возможности отфильтровать папки с файлами, кроме как через маску расширения и имени в настройках приложения "File / Preferences / New Project, Import and Link Manager / Files and Folders / Filter". Также в прошлых версиях фильтры на объекты базы (тех.писательница опрометчиво назвала объекты "базы" объектами "данных", с которыми CS не работает) создавались и хранились по-папочно и не пересекались. Теперь же отфильтровать можно наглядно и напрямую в окне, но перед этим приходится единожды развернуть папку, и лишь один фильтр одномоментно применим. Фильтры придуманы для того, чтобы не теряться в обилии нод и сделать наполнение дерева более быстрым. Но поскольку в системе формирования дерева уже сделано немало ускорений, то быстрые фильтры стали более уместными. Но функционал быстрых фильтров оказался не совместим с отбором файлов и объектов для последующего импорта или линковки, потому что чекер у выбранной ноды сохраняется и восстанавливается при смене фильтра, а кнопки добавления и линковки этого не замечают. Тем не менее, новые быстрые фильтры в дереве объектов срабатывают для всех вложенных нод, даже если они ещё не разворачивались и дерево не заполнялось объектами схем. К сожалению, за отсутствие интеграции с основным функционалом новшество никак не может быть оценено полным баллом.
Added the ability to break the process of items selection in the “From Files” tree.
Добавлена возможность прекращать процесс выбора позиций в дереве файлов.
В прошлых версиях при проставлении чекера в верхней папке дерева файлов сразу начинался процесс экспорта вложенных файлов в проект и этот процесс отображался только в статусной строке. Если в папке очень много файлов, то такой процесс невозможно было остановить или оборвать. Теперь же, если процесс выборки файлов затягивается более нескольких секунд, то прорисовывается окно движения процесса с кнопкой для его прерывания. При этом все уже состоявшиеся чекеры не обнуляются. Так, одним новшеством не только добавлено управление функционалом, но и исправлена интерфейсная погрешность, ранее вводившая в заблуждение о моментальном экспорте в проект вместо временного помечания файлов для последующего экспорта. Возможно, какому-то юзеру в новом диалоге будет не хватать кнопки для приостановки. Но это тянет на недоделку из-за непродуманности фичи разработчиком.
Export Wizard 0.7 из 1 возможного
Entirely redesigned the Export Wizard window.
Совершенно изменён дизайн окна мастера экспорта.
Мастер экспорта включает в себя экспорт скриптов и диаграмм, но вызывается как бы разными пунктами меню. Из интерфейса мастера убраны два дерева: одно для выбора принимающей папки, второе отображало содержимое принимающей папки вместе с готовыми файлами. Удобство нового интерфейса значительно в полном отображение настроек экспорта, а не прятании их по разным закладкам. Пожертвовав отображением списка экспортированных скриптов и диаграмм, интерфейс усовершенствован для удобства юзера, к тому же добавлена возможность фильтрации исходных скриптов и диаграмм. Но обратив внимание пользователей на этот модуль, разработчики забыли исправить его проблемы: экспорт комментариев псевдокода безусловно идёт в txt-файл, который сложно потом отыскать, учитывая исходное расширение скрипта - sql или иное. По-умолчанию, формат юникодности экспортированного файла коверкает его содержимое, добавляя лишние значки и символы. Поэтому полный балл дать не в силах.
Oracle Forms 0 из 1 возможного
Added support for Record Groups.
Добавлена поддержка групп записей.
Ранее в проект CS можно было импортировать такие объекты форм Oracle, как библиотеки и формы с их элементами, триггерами и прочими исполняемыми подпрограммами. Теперь к ним добавились группы записей, о которых вы можете узнать из первоисточника. К сожалению, объектов такого рода не добавлено в демо-проект или его скрипты, как это принято в хороших компаниях по разработке. В фильтре при импорте файлов в проект новых расширений файлов не обнаружено. В закладках с результатами анализа скрипта тоже не появилось отдельной для групп записей, как для canvases. Даже версия демо-проекта осталась прежней с прошлого билда, то есть нет смысла искать какие-то новшества парсера при импорте форм Oracle. Поэтому нет возможности протестировать хоть что-нибудь и дать за новшество подобающие баллы.
Analyzer Progress 0 из 1 возможного
Redesigned the message prompting the user about too long code analysis time, and added the ability to disable code detection and diagram generation right before the start of the analysis.
Переделано сообщение, предупреждающее юзера о слишком большом времени анализа кода, и добавлена возможность выключать опознание кода и генерацию диаграммы непосредственно перед стартом анализа.
В пред-предыдущих версиях CS действительно существовало предупреждение и настройка анализа по более быстрому методу. Но после рефакторинга анализатора ещё пару лет назад в этом отпала всякая необходимость, и даже опцию саму убрали. Что именно сделали на этот раз - никак пояснить вам не могу, поскольку нет никакой разницы при запуске анализа в предыдущем и текущем билдах. Изменение - фикция и баллов не получает.
Global Search 0.5 из 1 возможного
Added the ability to toggle the search for whole words only from the drop-down menu next to the search box. The options to open the search results in a tab or window were also moved to the drop-down menu.
Добавлена возможность переключать поиск по полному слову только из ниспадающего меню в диалоге поиска. Опции для открытия результатов поиска на закладке или окне также были перемещены в ниспадающее меню.
Странно, что два изменения записаны в один пункт RNs, потому что чуть позже увидите более мелкие правки, поделённые на самостоятельные. А вот про исчезнувшую опции о совпадении регистра почему-то вообще не сказано. Да, за счёт переноса кнопок в ниспадающее меню, строка для ввода условия поиска стала чуть длиннее, но подобное прятание интерфейсных компонентов ухудшает понимание предназначения приложения. Вышеописанные замечания не тянут на полный балл.
CRUD Matrices 0+0=0 из 2 возможных, -0.3 за смуту
Optimized the speed of CRUD matrix generation.
Оптимизирована скорость генерации матрицы CRUD.
В очередной раз программист сделал некоторые технические изменения, которые никак не отражаются на работе обычного пользователя, потому что нагрузочные тесты только могут показать итог улучшений. Этот текст время от времени копируется из одних RNs в текущие, даже без коррекции. Поэтому не могу дать и йоты, что на самом деле были какие-то правки.
Added the ability to navigate to CRUD matrices called from Call Trees.
Добавлена возможность навигации на матрицы CRUD, вызванные из дерева вызовов.
Примечание: из дерева вызовов никогда не существовало никакого перехода на матрицы и его никоим образом не добавили. А вот обратная навигация - из матрицы в дерево вызовов - существует давным-давно. Так что, этот пункт RNs - полная чушь, не заслуживающая ни балла, даже стоило снять несколько за введение в заблуждение.
Filter 0.7 из 1 возможного
Added a list with recent filter conditions to all the modules where the quick filter is used.
Добавлен список последних использованных фильтров во все модули, где применяется быстрый фильтр.
Число "всех" модулей с функцией быстрого фильтра ограничивается четырьмя окошками: главное дерево проекта, дерево кода рядом с редактором, дерево файлов для импорта в проект, дерево скриптов или диаграмм в мастерах экспорта. Да, это полезно иметь пополняемый список ранее набранных условий фильтрации. Каждый из них пополняется самостоятельно и хранится отдельно друг от дружки. Но интерфейсно такой функционал очень часто перекрывает рабочую область совершенно посторонних окон. Например, поставьте курсор в строку с фильтром дерева кода и откройте мастер заданий или генерации отчёта. В этом случае список условий фильтров останется висеть поверх всех окон, даже если это совершенно чужое приложение - интернет браузер или почтовый клиент, скриншоттер или видеоплеер. Поскольку тех.писательница не утруждала себя точным перечислением мест нововведения, и с новым компонентом выявился интерфейсный баг, то полный балл дать не за что.
Preferences 0.5+0.8+1+1+0.8=4.1 из 5 возможных
Preprocessor options in Preferences get inactive when the Preprocessor is enabled.
Опции препроцессора становятся неактивными в установках, когда препроцессор выключен.
Одно из правил зависимых опций - они должны переключаться согласованно, то есть если выключается "родительская" опция, то ни одна из её "дочерних" не должна терять своего значения, вместе с тем не иметь возможность к изменению и применению. Поэтому моё мнение тестировщика - это не улучшение интерфейса, а частичное исправление интерфейсной недоделки, потому что не все опции препроцессора стали зависимыми.
The folder where the preferences are saved or from which they are loaded is now restored on the next use.
Папка, где настройки были сохранены или из которой загружались, теперь восстанавливается для последующего использования.
Наконец-то программисты реализовали то, что должны были сделать изначально с самим функционалом сохранения и восстановления настроек. Это же как букварь для работ, касающихся папок и файлов. Существуют общепринятые правила полезности интерфейса: диалог для выбора папки и файла должен сохранять и восстанавливать последний использованный путь, по-умолчанию имя и расширение файла должно соответствовать функционалу и предлагаться по соответствующему шаблону. Так что, это новшество с точки зрения тестировщика следует считать исправлением недоделок.
Removed the Main Window page from Preferences as unnecessary.
Из настроек приложения убрана страница главного окна за ненадобностью.
В прошлых версиях CS убранная страница была предназначена для настройки в большей своей части подсказок. Поскольку система встроенных хелпов отработана с годами, то программисты посчитали их настройки ненужными. Изначально мне было не понятно, почему часть установок расположены на главной странице, а не в специальной интерфейсной. Но на момент их появления для них действительно не хватало свободного места, хотя логически им и сейчас не место на первой странице, где интерфейсность перемешана с функционалом. В качестве регресс-теста попробуйте восстановление настроек из файла, сохранённого в пред-предыдущей версии CS.
Moved the option to change the position of the code editor to the Code Editor page in Preferences, and renamed the option to “Display Code Editor below script analysis result.”
Перемещена опция для изменения позиции редактора кода на страницу настроек самого редактора и переименована.
В прошлой версии название опции ориентировалось на результаты анализатора и она была в числе настроек главного окна. Теперь наименование опции приближено к редактору, то есть в рамках приложения, делающего в основной своей массе анализ кода, этот самый процесс принижается до обычного редактора кода. В рамках теста стоит перепроверить сохранение и восстановление перемещённой опции, а также приведение к дефолтному состоянию. Странно, что дубликат опции на тулбаре редактора кода всё ещё имеется, хотя в настройках CS можно было бы и убрать её.
Renamed the “Code” page to “Code Editor” in Preferences.
Переименована страница кода в редактор кода.
Тех.писательница ошиблась в старом наименовании страницы, потому что вместо Code она называлась Editor. Но в хелпе и интерфейсе изменения сделаны логично. Это мелкий фикс из числа тех, что обычно не включают в RNs из-за низкой значимости. Но, тем не менее, балл билду приносит.
Online Support Desk 1+0.8=1.8 из 2 возможных
The process of the update downloading is now indicated on the Windows taskbar.
Процесс загрузки апдейта теперь отображается на таскбаре операционной системы.
Года три назад, когда один из программистов подправлял интерфейсный компонент, отображающий движение длительного процесса, это новшество уже актуализировалось. Но, видимо, после кардинальной смены интерфейса компонент сломался. Теперь старое вернули и называют его новинкой. Такой функционал интерфейса необходимо проверять на всех объявленных к поддержке версиях и разрешениях операционной среды (Windows 7-10, 100-150%, темы от стандартной до контрастной). Градусник на кнопке панели задач должен быть показан не только при активации иного приложения, но и во время параллельной активности CS на рабочем столе и в панели задач. Загрузку апдейта может проверить любой юзер, если включит режим ручного апдейта в окне OSD Updater и загрузит текущий билд.
Added the ability to attach files and images from the Clipboard.
Добавлена возможность прикреплять файлы и картинки из буфера обмена.
Очень полезное новшество давным-давно было предложено и наконец-то осуществлено по горячей клавише и из контекстного меню, как написано в хелпе. Картинкам автоматом присваиваются имена с порядковыми номерами, а другие файлы вставляются со своими именами и проверкой на дубликаты по имени. Одну странность не обработали - сообщение с только прикреплениями, но без заполненных других параметров, не предлагается к сохранению на закрытии окна. Поэтому балл не полный.
GUI 0.5 из 1 возможного
Renamed the “Export to/Import from” menu commands to avoid duplication in captions.
Переименована команда меню экспорта/импорта для избежания дублирования в заголовках.
Напомню, что в последних версиях в главном меню упразднён пункт утилит, а экспорт/импорт скриптов и диаграмм перенесены в "File". Новшество же заключается в том, что из подпунктов убрали префикс действия, уже имеющийся в верхнем пункте. Хоть и сущая мелочь, но изменение есть и приносит балл билду. Но о таких переименованиях нет смысла сообщать, поскольку они не несут никакой функциональной нагрузки. Странным считаю то, что в рамках этого RNs забыли о переименовании пункта логов анализа. Чтобы не снимать целый балл за забывчивость, лишь снижу стоимость текущего.
What’s New 0 из 1 возможного
The What’s New window is now shown only at the first application launch. To see this window each time, clear the selection of the “Don’t show this message again” check box.
Окно со списком новинок теперь показывается только при первом запуске приложения. Для того, чтобы увидеть это окно ещё раз, очистите галку о непоказе этого сообщения опять.
Окно с RNs почти изначально имело опцию для последующего скрытия без возможности её переключения через интерфейс продукта. Для возобновления показа при старте юзеру вручную можно обнулить опцию в одном из настроечных файлов. Чуть позже сделали показ только юзерам с купленной лицензией, а потом добавили пункт в главное меню для показа всем, но уже без означенной опции. А в последних версиях CS от этого списка в рамках продукта вообще смысла не стало, потому что десктопно показывается только первый пяток новшеств, а всё остальное надо искать на сайте ConquestSS. Конкретно это новшество является пустой припиской, поскольку абсолютно никакой разницы в версиях нет. Поэтому и баллов билду не приносит. А вот если бы тех.писательница сказала, что опция последующего непоказа теперь всегда включена, то можно было бы засчитать.
BUGS FIXED 1.5+0+0+0.5+0.6+0+0+1+1+1+0.8+0+0+1=7.4 из 7+2+1+1+2+1+1+2+2+2+1+1+1+2=26, -1-1=-2 за выявленные баги
Core 0.8+0+0.7+0+0+0+0=1.5 из 7 возможных, -1 за баг
A single-line comment is now highlighted correctly when it goes after a number.
Одностроковый комментарий теперь подсвечивается правильно, когда он идёт за числом.
Однострочный комментарий в Oracle начинается с двух символов минуса без пробела. Его шрифт и начертание определяется в "File / Preferences / Code Editor / Color / Elements / Comments". Может так случиться, что строка кода заканчивается числовым знаком, после которого приписан комментарий. В таком случае парсер CS в прошлом билде ошибался и воспринимал первый символ комментария обычным математическим знаком отнимания. Для лучшего понимания фикса тех.писательнице стоило вместо number использовать термин digit.
Fixed highlighting of search results in lines that include the TAB character.
Зафиксирована подсветка результатов поиска в строках, которые включают символ табуляции.
Странно, что модуль - не редактор кода, а общий основной. Для теста создадим текст в каждой строке которого вставим от нуля до пяти пробелов через символ табуляции. В каждой строке также должен быть набор искомых символов. Это может быть любой текст, совсем не похожий на код для анализатора. Вероятность того, что в вашем примере будет удачное сочетание символов и пробелов, конкретно для которых исправлен баг, близка к нулю. Подсветка всё также теряется, а курсор встаёт на соседнюю позицию от искомого сочетания. Никакого фикса не обнаружено, поэтому и балл дать не за что.
The words “left”, “right”, “outer”, “inner”, and “cross” are now treated and highlighted as reserved words.
Пять перечисленных слов теперь воспринимаются и подсвечиваются как служебные.
Для проверки фикса вставьте эти слова в любом порядке (лучше DML) без кавычек в текст кода и сделайте особые настройки в "File / Preferences / Code Editor / Color / Elements / Keywords = 'Text Attributes' + 'Text-typing conversion'" и "Analyze / Code Analyzer Options / Formatter Options / Case / Keywords". Проверьте применимость настроек в момент редактирования этих слов и после анализа скрипта с форматированием. Поскольку в мои примеры вошли запросы из документации Oracle, то выяснилось, что служебное слово "apply" из аналогичных DML не может быть обработан парсером CS, наряду с перечисленными. Вот и пример того, что фикс делается по принципу тупокодера, без включения мозгов и привлечения хотя бы юниора-тестировщика. Также выяснилось, что имелось ввиду форматирование кода на момент его ввода в редакторе, а не при форматировании анализатором продукта.
Fixed the highlighting of a literal if the opening bracket of a q-notation is followed by a break.
Зафиксирована подсветка литералов, если открытие скобок альтернативной нотации следует за прерыванием.
Этот баг касается лишь редактора кода, в котором единственном используется подсветка кода. Примечание: альтернативная нотация имеет специальные символы после апострофа. Абсолютно не могу понять, что имелось ввиду под словами, что нотация следует за прерыванием. Возможно, тех.писательница хотела сказать, что содержимое альтернативной нотации начинается с новой строки, но эта моя догадка не увенчалась успехом. Поэтому фикс засчитать не могу.
The error “Unable to retrieve memory usage structure” is no longer logged in the 64-bit version of the tool.
Ошибка невозможности изменить структуру использования памяти больше не логгируется в утилите 64-битной версии.
Лог приложения складируется в файле "%AppData%/Roaming/ClearSQL/CS.log" вне зависимости от используемой битности продукта. К сожалению, тех.писательница не соизволила описать условия, при которых могла случиться ошибка, и у меня нет идеи по воспроизведению. За пустоту не могу дать баллы.
The error “TSplashSteps.SetCurrent: item not in list.” is no longer raised on the application launch.
Ошибка окна старта, не вошедшего в список, больше не появляется на запуске приложения.
Судя по имени компонента, в окне не присвоено нулевое значение порядковому элементу. Такое возможно лишь при первом запуске CS на чистую машину. Но мой тест не показал устойчивое наличие бага в прошлом билде, поэтому никак не могу отметить его исправление.
An access violation error no longer occurs on closing the application right after it was started.
Ошибка доступа больше не случается на закрытии приложения сразу после его запуска.
CS никак невозможно закрыть сразу после запуска, потому что колесо открытия крутится довольно долго, а потом куча окон заставки и загрузки показывается. Так что, описанный баг - фикция и не приносит балл билду.
Project Tree 0+0=0 из 2 возможных
Fixed filtering by using wildcards.
Зафиксирована фильтрация с использованием пустых подстановок.
После того, как в дереве проекта менеджер фильтрации из набора опций превратился в единственную строку ввода, понимание его использования сильно усложнилось. При фильтрации в базе Oracle и в файлах используются разные символы подстановки, а о том, что их вообще можно использовать, сказано только глубоко в хелпе. По элементарным тестам у меня никак не получилось выяснить конкретику бага, поэтому не могу дать ни балла.
Fixed the direction of the arrow shown in the splitter when the Project Tree panel is closed.
Зафиксировано направление стрелки, показанной на разделителе, когда панель дерева проекта закрыта.
Направление стрелки на разделителе в прошлой и текущей версиях всегда соответствует логике, как при полном сворачивании дерева, так и при частичном. Поэтому описанный фикс никак не исправлялся и не получает ни балла.
Analyzer View 0 из 1 возможного
Updated the text shown in the Analyzer View panels when no project is loaded.
Обновлён текст, показываемый на панелях для просмотра анализатора, когда загружается проект.
Панелей анализатора очень много: Summary, Project Analysis History, диаграммы проекта (3 штуки), скриптовые панели (около 20 штук). Скорее всего текст слегка подкорректирован на одной из них, но тех.писательница поленилась уточнить. Проверять все 25 панелей смысла нет, поскольку вы запутаетесь в логике текстов. К сожалению, архитектура CS такова, что все панели не имеют стандартного шаблона для подобных сообщений и тестировщику придётся перепроверять каждое из них. Поскольку программист и тех.писательница не уважают своих пользователей и отписываются подобными общими фразами, то и заплатить за них следует лишь нулевым баллом.
Find Text / Find in Files 0.5 из 1 возможного
The progress dialog box that appears once the text replacement takes more than 5 seconds is now shown at the top of the main window, not in the Code Editor workspace.
Диалог прогресса, который однажды появляется при замене текста спустя 5 секунд теперь показан в верхней части главного окна, а не в рабочей области редактора кода.
Примечание 1: в CS существует две разные функции поиска - по тексту и по проекту с настройками. Примечание 2: поиск по тексту запускается через кнопки на тулбаре редактора кода в прошлой версии и через контекстное меню в текущей. Только по результатам тестов мне удалось выяснить, что текст фикса прямо противоположен сделанному. В прошлой версии градусник замен прорисовывался в верхнем левом углу всей рабочей области приложения, то есть на стыке дерева проекта и дерева кода, либо одной из закладок с результатами анализа скрипта, если редактор в нижнем положении. Теперь же диалог замен занимает более логичную позицию - по центру редактора кода. Для теста вам понадобится скрипт с возможной заменой более 1000 раз, например, явная вставка строк в таблицу или столько же дубликатов выборки (размноженная строка "select 1 from dual;") и замена во всех 1000 строках ("1" на "2"). Штраф за введение в заблуждение юзера - полбалла.
Analyzer Progress 0+0.6=0.6 из 2 возможных
When an analysis is running, click the close button in the Analyzer Progress window now shows a message suggesting the user to break the analysis.
Когда запущен анализ клик по кнопке закрытия в окне процесса анализа теперь показывает сообщение с предложением юзеру прервать анализ.
Во-первых, сразу при старте анализа кнопка закрытия окна всегда переименовывалась в прерывание. В этом плане текст фикса обманывает юзера. Во-вторых, предложение прервать анализ существовало изначально. То есть означенный фикс - пустая приписка в RNs, за которую не положено ни балла.
The options in the Analyzer Progress are now activated in the correct order on pressing TAB.
Опции в прогрессе анализа теперь активируется в правильном порядке при нажатии клавиши табуляции.
Называя интерфейсные элементы опциями тех.писательница сбивает юзера с толку тем понятием, что текст фикса воспринимается неоднозначно. Если точно следовать описанию, то по нажатию табулятора в окне прогресса анализа ожидалось бы переключение значений настроек анализа, а на самом деле активный курсор всего лишь переходит по элементам в более логичном порядке. Но и даже после этой правки активный курсор на один клик куда-то пропадает также на обеих закладках, не подсвечивая ни один из видимых интерфейсных элементов. Поэтому никак не могу дать полный балл.
Code Review Rules 0 из 1 возможного
The duplicated code detector no longer detects false-positive duplicates on the sets of string/numeric literals.
Определитель дубликата кода больше не находит фальшиво-позитивные дубликаты на установках символьно-числовых литералов.
К сожалению, формулировка фикса такова, что мне никак не удаётся впихнуть в неё все мои знания о встроенном правиле 182 "Avoid duplicate code". Тех.писательница так намудрила с терминами, что текст превратился в абракадабру. Поэтому билд теряет балл.
Project Report Assistant 0 из 1 возможного
The error “No mapping for the Unicode character exists in the target multi-byte code page” no longer occurs on trying to generate a report with international characters in the report name or path.
Ошибка об необнаруженных юникодных символах в принимающей мультибайтовой странице кода больше не случается при попытке сформировать отчёт с интернациональными символами в заголовке или пути отчёта.
Из описания бага может показаться, что для теста достаточно создать проект и его отчёт (File / HTML Report), имена которых будут содержать интернациональные символы, то есть обычную латиницу. Но на самом деле текст фикса является полной чушью, и проблема скорее всего была с каким-то особым символом или набором, о котором умолчала тех.писательница. Поэтому пункт RNs не приносит балла билду.
Search 0+1=1 из 2 возможных
The instant help button is now always shown in the header of the Search tab.
Кнопка мгновенной помощи теперь всегда показывается в заголовке закладки поиска.
Поскольку нет никакой конкретики, при каких случаях эта кнопка пропадала, то и нечего проверить. А значит и балл дать не за что.
Navigating to a search result item is no longer slowed down while the search is still in progress.
Навигация на элемент результата поиска больше не замедляет процесс поиска.
Для того, чтобы хоть как-то заметить ускорение процесса поиска, рекомендую выводить результаты не в отдельную панель, а на самостоятельную закладку. А для работы создать проект с огромным количеством скриптов, в которых запустите поиск. Но и эти данные для нагрузочного теста маловероятно покажут сделанное внутри изменение. Так что, дам авансом балл уже за то, что техническое исправление столь грамотно описано.
Analysis Logs 0.5+0.5=1 из 2 возможных, -1 за баг
Fixed positioning of the drop-down list.
Зафиксирована позиция выпадающего списка.
Напомню, что список логов анализа проектов доступен в новых версиях из главного меню "Analyze / Manage Project Analysis Logs", а настройки "File / Preferences / Project Analysis / Log". Осторожно! При первом открытии списка вам будет предложено удалить какие-то якобы несуществующие файлы, которые всё-равно удалятся, даже если вы откажитесь. Это довольно критичный баг, за который следует снять балл. Для сравнения внешних изменений окна достаточно сделать скриншот и убедиться, что лишний сплиттер исчез из под комбобокса, а ширина списка проектов стала настолько больше, что в этой пустоте могло бы имя проекта уместиться дважды. Странно, что программисты не применили здесь столь уместную функцию автоподбора ширины. Также подмечено, что в файлах с логами анализатора русский алфавит, особенно в полнопрописных датах, отображается исковеркаными символами. За тупой фикс без приложения сообразительности дам не полный балл.
Added the ability to resize the Analysis Logs window.
Добавлена возможность изменять величину окна с логами анализа.
Во-первых, это не исправление бага, а дополнительное удобство интерфейса. Во-вторых, установленные минимальные размеры слабо коррелируются с имеющимся контентом: никакой эргономики свободного пространства, элементы несоразмерные и перекрываются, автоподбор размера шрифта и рисунка не применяется. И так всегда, программист в попытке усовершенствовать наоборот портит изделие. Если бы этот пункт RNs был в новинках, то можно было бы дать балл, но поскольку фикс породил множество проблем, то, вместо снятия баллов за каждую погрешность, всего лишь недодам за этот.
Job and Schedule Manager 0+1=1 из 2 возможных, -1 за баг
Disabling the Preprocessor in the job’s Preferences no longer affects the state of the Preprocessor at the application level.
Выключение препроцессора в настройках заданий больше не отражается на статусе препроцессора уровня приложения.
Одно время система настроек задания была полностью отделена от глобальных установок приложения. Но в какой-то версии CS эта давно работающая система сломалась. Кроме статуса препроцессора мастер заданий портит и другие настройки приложения, например, переоткрытие CS всегда сопровождается показом старт-окна, если в предыдущей сессии хотя бы раз открывался мастер заданий. За этот баг есть смысл снять балл. А за отсутствовавший баг о препроцессоре в прошлом билде и его фиктивную правку ничего дать не могу, поскольку любые изменения опции в рамках задания "Analyze / Job and Scheduler Manager / Preferences (Job) / Preprocessor / Enable Preprocessor" никак не отражались и не отражаются на состоянии препроцессора, видимом в главном меню "Analyze / Preprocessor is ON-OFF".
It is no longer possible to save a job or schedule without a job name.
Больше нет возможности сохранить задание или расписание без имени задания.
В предыдущем и текущем билдах не было и нет возможности создать задание без имени, но если оно было случайно удалено в процессе правки, то последующее сохранение задания было возможным в прошлом билде. Зачем внесли обязательность наличия имени задания? Вероятно, последующее его исполнение или передача в операционную систему была затруднена и проверка обязательного поля добавлена к пересохранению объекта.
System Information 0.8 из 1 возможного
TNS_ADMIN registry values are now included in the system information.
Величины реестра об администраторских настройках tns теперь включены в системную информацию.
Немного теории о клиенте Oracle. Одна из разновидностей подключения к базе нуждается в настройке TNS через служебный файл "tnsnames.ora" и пути к нему, прописанные в переменных окружения, либо реестре. Если вы используете коннект к базе не через tns, но хотите увидеть фикс бага, то добавьте вышеозначенную величину в переменные окружения и реестр "HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE", а после перезагрузки компа и приложения посмотрите в "Help / System Information". Только не стоит подключаться к базе, если вы не уверены в правильности введённых вами величин. Фикс сделан, но его место не в числе багов, поэтому снижу балл.
View Differences 0 из 1 возможного
The “View Differences” window no longer opens on trying to compare scripts linked to a database object that belongs to a database to which ClearSQL cannot connect.
Окно просмотра различий больше не открывается при попытке сравнить скрипты, слинкованные с объектом базы, которые нацелены на базу, с которой у ClearSQL нет коннекта.
Исходная ситуация такова: в проекте имеется слинкованный с базой скрипт, CS ещё не коннектился к базе, но юзер желает сравнить содержимое скрипта с его связанным объектом. Логичнее в таком случае сначала запросить из свойств скрипта параметры линковки, предложить или авто-подключиться к базе, найти в ней нужный объект, а в случае невозможности подключиться к базе сообщить причину отсутствия сравнения. Но программист пошёл по пути наименьшего сопротивления и просто прервал работу юзера, ничего для него не сделав. Да, это тоже фикс бага, но совершенно не удовлетворяющий качеству продукта с точки зрения пользователя. Моя же попытка увидеть баг в прошлом билде и его фикс в текущем не увенчалась успехом - работа CS ничуть не изменилась. Поэтому пункт RNs не приносит билду ни балла за ложь тех.писательницы и ничегонеделанье программиста.
Instrumented Code 0 из 1 возможного
The anonymous block numbers are now shown in the Instrumented Code tree.
Номера анонимных блоков теперь показаны в дереве инструментатора кода.
Инструментор кода - фича скриптовая, а поскольку речь в баге о некоем количестве анонимных блоков, то для теста нам понадобится сложный скрипт, не являющийся телом пакета, а всего лишь объединяющий несколько независимых PL/SQL блоков, не являющихся какими-нибудь подпрограммами. То есть, можно взять тело любого пакета или объектного типа, заменить все заголовки на служебное слово declare, тогда и останутся несколько анонимных блоков в одном скрипте. Если бы этот пункт RNs был в числе новшеств, то стоило бы поискать наличие блоков в инструментере кода, но поскольку это баг, то что-либо проверять бесполезно. На самом деле инструментор кода вообще не применим к скриптам с анонимными блоками. Так что, фикс - полная чушь, не приносящая билду столь желанный балл.
Preferences 1+0=1 из 2 возможных
Switching off the “Insert Mode” on the Code Editor page no longer raises an access violation error on the application launch.
Выключение режима вставки на странице редактора кода больше не даёт ошибки доступа при запуске приложения.
Поскольку в ConquestSS нет тестировщиков и отсутствует всякое тестирование, даже смоук, то меня ни чуть не удивляет, что такой страшный баг регрессии был в прошлом билде. CS абсолютно не запускался при выключенной опции вставки.
Fixed the ability to load preferences from a file.
Зафиксирована возможность загрузки настроек из файла.
К сожалению, тех.писательница не уточнила причину ошибки, поэтому нет никаких идей, в чём же конкретно загрузка настроек из файла глючила ранее. А поскольку не известно, как поймать баг в предыдущем билде, то и нет возможности увидеть правку. За нулевые исправления даю и нулевые баллы.
Итого по билду: 12.2+7.4=19.6 из 22+26=48 возможных, что составляет 19.6/48=41% готовности билда, -0.3-2=-2.3 баллов снимаю за баги.
IMPROVEMENTS 0.8+0.9+0.5+1.7+0.7+0+0+0.5+0+0.7+4.1+1.8+0.5+0=12.2 из 1+2+1+2+1+1+1+1+2+1+5+2+1+1=22, -0.3 за баги
Core 0.8 из 1 возможного
Added the ability to navigate around the project using browser-like back and forward buttons. The navigation history is available from the navigation buttons drop-down lists.
Добавлена возможность навигации по проекту, используя подобие просмоторщика в кнопках назад и вперёд. История перемещений доступна в ниспадающем списке кнопок навигации.
Дерево проекта у реально работающих в CS может быть огромным, а из общих диаграмм проекта или результатов анализа можно перепрыгнуть на любой из скриптов в дереве. При этом бывает довольно сложно вернуться обратно или даже вспомнить, где работал до этого. Новшество довольно полезное, но его реализация абсолютно не интегрирована с другими фичами, например, фильтрацией. Но радует от факт, что история перемещений запоминает не только ноду в дереве, но и соответствовавшую ей закладку с результатами анализа. Удручает лишь кратковременность показа хинта вместо, как сказано, полного ниспадающего списка. Функционал навигации по кликам не нов для продуктов ConquestSS. Обидно только, что подобные полезные функции так долго не копировались в аналогичные приложения. Может теперь не долго уже осталось ждать, когда интерактивный отчёт по проекту приблизится к ClearDB Docu.
Code Editor 0.9+0=0.9 из 2 возможных
Added the ability to navigate to a variable, parameter, local subprogram, local type, subprogram of another package, and dataset by pressing Ctrl+Click on the identifier.
Добавлена возможность навигации на переменные, параметры, локальные подпрограммы, локальные типы, подпрограммы чужих пакетов и объекты данных по нажатию горячих клавиш на идентификаторах.
Почти двадцать лет назад, когда у редактора кода в SQLDetective появилось дерево кода, то появилась возможность и навигировать курсор через горячую клавишу по компонентам текущего кода за счёт прямой связи текста кода с его структурой в дереве. В CS дерево кода тоже существовало изначально, но поскольку редакторы кода в обоих продуктах создавались разными программистами, то тестировщику ужасно сложно было доказать упрямым разработчикам неконсистентность одинаковых модулей в продуктах единой компании ConquestSS. Наконец-то в этом, можно сказать политическом, деле наметились подвижки. С точки зрения программиста этот перенос функционала не составляет никакой сложности, а для обычного пользователя такое удобство несёт массу преимуществ по ускорению и упрощению работы с кодом. Единственное, что меня смутило в тексте RNs - переход на подпрограммы чужих пакетов. В SQLDetective это возможно, поскольку код в редактрах связан со всеми объектами базы через незакрываемый никогда Навигатор Объектов. В CS хоть и есть дерево проекта с именами скриптов, но для перехода на чужие объекты (не имеющиеся в текущем скрипте, но наличествующие в проекте) они должны быть префиксованы истинным именем объекта, а не скрипта. И переход, в отличие от SQLDetective, осуществляется не на объявление подпрограммы в спецификацию пакета или объектного типа, а в его тело на первую строку подпрограммы чужого пакета. Такое неожиданное поведение позволяет снизить балл.
An active line is now always highlighted even if it belongs to a suppressed block.
Активная строка теперь всегда подсвечивается, даже если она в свёрнутом блоке.
Мне абсолютно не удалось увидеть разницу между прошлым и текущим билдами, в обоих редакторах подсветка строки и позиция курсора отображаются идентично. Поэтому этот пункт RNs не могу считать сделанным.
Project Tree 0.5 из 1 возможного
Added the Import and Export commands to the Project Tree pop-up menu.
Команды экспорта и импорта добавлены в контекстное меню дерева проекта.
Глобальная переделка главного меню и сокращение главного тулбара привела к тому, что часть важного функционала пропала с поля зрения юзера. А теперь, возвращая более лёгкий доступ к частоиспользуемым фичам, тех.писательница называет это новшеством, вместо исправления бага регрессии. То есть программист в прошлом билде наворотил бед, а теперь выдаёт это за внедрение удобства пользования. Разве можно за такое не только бесполезное, но и вредоносное коверканье кода и структуры продукта давать балл?
New Project Assistant / Import Wizard / Link Manager 0.7+1=1.7 из 2 возможных
Added a quick filter to instantly filter the file system tree and data object tree. The filter is applied to the already expanded nodes and to those expanded after the filter is applied.
Добавлен быстрый фильтр для моментальной фильтрации дерева файловой системы и дерева объектов данных. Фильтр применяется к уже развёрнутым нодам и к тем, которые разворачивались перед применением фильтра.
Ранее не было возможности отфильтровать папки с файлами, кроме как через маску расширения и имени в настройках приложения "File / Preferences / New Project, Import and Link Manager / Files and Folders / Filter". Также в прошлых версиях фильтры на объекты базы (тех.писательница опрометчиво назвала объекты "базы" объектами "данных", с которыми CS не работает) создавались и хранились по-папочно и не пересекались. Теперь же отфильтровать можно наглядно и напрямую в окне, но перед этим приходится единожды развернуть папку, и лишь один фильтр одномоментно применим. Фильтры придуманы для того, чтобы не теряться в обилии нод и сделать наполнение дерева более быстрым. Но поскольку в системе формирования дерева уже сделано немало ускорений, то быстрые фильтры стали более уместными. Но функционал быстрых фильтров оказался не совместим с отбором файлов и объектов для последующего импорта или линковки, потому что чекер у выбранной ноды сохраняется и восстанавливается при смене фильтра, а кнопки добавления и линковки этого не замечают. Тем не менее, новые быстрые фильтры в дереве объектов срабатывают для всех вложенных нод, даже если они ещё не разворачивались и дерево не заполнялось объектами схем. К сожалению, за отсутствие интеграции с основным функционалом новшество никак не может быть оценено полным баллом.
Added the ability to break the process of items selection in the “From Files” tree.
Добавлена возможность прекращать процесс выбора позиций в дереве файлов.
В прошлых версиях при проставлении чекера в верхней папке дерева файлов сразу начинался процесс экспорта вложенных файлов в проект и этот процесс отображался только в статусной строке. Если в папке очень много файлов, то такой процесс невозможно было остановить или оборвать. Теперь же, если процесс выборки файлов затягивается более нескольких секунд, то прорисовывается окно движения процесса с кнопкой для его прерывания. При этом все уже состоявшиеся чекеры не обнуляются. Так, одним новшеством не только добавлено управление функционалом, но и исправлена интерфейсная погрешность, ранее вводившая в заблуждение о моментальном экспорте в проект вместо временного помечания файлов для последующего экспорта. Возможно, какому-то юзеру в новом диалоге будет не хватать кнопки для приостановки. Но это тянет на недоделку из-за непродуманности фичи разработчиком.
Export Wizard 0.7 из 1 возможного
Entirely redesigned the Export Wizard window.
Совершенно изменён дизайн окна мастера экспорта.
Мастер экспорта включает в себя экспорт скриптов и диаграмм, но вызывается как бы разными пунктами меню. Из интерфейса мастера убраны два дерева: одно для выбора принимающей папки, второе отображало содержимое принимающей папки вместе с готовыми файлами. Удобство нового интерфейса значительно в полном отображение настроек экспорта, а не прятании их по разным закладкам. Пожертвовав отображением списка экспортированных скриптов и диаграмм, интерфейс усовершенствован для удобства юзера, к тому же добавлена возможность фильтрации исходных скриптов и диаграмм. Но обратив внимание пользователей на этот модуль, разработчики забыли исправить его проблемы: экспорт комментариев псевдокода безусловно идёт в txt-файл, который сложно потом отыскать, учитывая исходное расширение скрипта - sql или иное. По-умолчанию, формат юникодности экспортированного файла коверкает его содержимое, добавляя лишние значки и символы. Поэтому полный балл дать не в силах.
Oracle Forms 0 из 1 возможного
Added support for Record Groups.
Добавлена поддержка групп записей.
Ранее в проект CS можно было импортировать такие объекты форм Oracle, как библиотеки и формы с их элементами, триггерами и прочими исполняемыми подпрограммами. Теперь к ним добавились группы записей, о которых вы можете узнать из первоисточника. К сожалению, объектов такого рода не добавлено в демо-проект или его скрипты, как это принято в хороших компаниях по разработке. В фильтре при импорте файлов в проект новых расширений файлов не обнаружено. В закладках с результатами анализа скрипта тоже не появилось отдельной для групп записей, как для canvases. Даже версия демо-проекта осталась прежней с прошлого билда, то есть нет смысла искать какие-то новшества парсера при импорте форм Oracle. Поэтому нет возможности протестировать хоть что-нибудь и дать за новшество подобающие баллы.
Analyzer Progress 0 из 1 возможного
Redesigned the message prompting the user about too long code analysis time, and added the ability to disable code detection and diagram generation right before the start of the analysis.
Переделано сообщение, предупреждающее юзера о слишком большом времени анализа кода, и добавлена возможность выключать опознание кода и генерацию диаграммы непосредственно перед стартом анализа.
В пред-предыдущих версиях CS действительно существовало предупреждение и настройка анализа по более быстрому методу. Но после рефакторинга анализатора ещё пару лет назад в этом отпала всякая необходимость, и даже опцию саму убрали. Что именно сделали на этот раз - никак пояснить вам не могу, поскольку нет никакой разницы при запуске анализа в предыдущем и текущем билдах. Изменение - фикция и баллов не получает.
Global Search 0.5 из 1 возможного
Added the ability to toggle the search for whole words only from the drop-down menu next to the search box. The options to open the search results in a tab or window were also moved to the drop-down menu.
Добавлена возможность переключать поиск по полному слову только из ниспадающего меню в диалоге поиска. Опции для открытия результатов поиска на закладке или окне также были перемещены в ниспадающее меню.
Странно, что два изменения записаны в один пункт RNs, потому что чуть позже увидите более мелкие правки, поделённые на самостоятельные. А вот про исчезнувшую опции о совпадении регистра почему-то вообще не сказано. Да, за счёт переноса кнопок в ниспадающее меню, строка для ввода условия поиска стала чуть длиннее, но подобное прятание интерфейсных компонентов ухудшает понимание предназначения приложения. Вышеописанные замечания не тянут на полный балл.
CRUD Matrices 0+0=0 из 2 возможных, -0.3 за смуту
Optimized the speed of CRUD matrix generation.
Оптимизирована скорость генерации матрицы CRUD.
В очередной раз программист сделал некоторые технические изменения, которые никак не отражаются на работе обычного пользователя, потому что нагрузочные тесты только могут показать итог улучшений. Этот текст время от времени копируется из одних RNs в текущие, даже без коррекции. Поэтому не могу дать и йоты, что на самом деле были какие-то правки.
Added the ability to navigate to CRUD matrices called from Call Trees.
Добавлена возможность навигации на матрицы CRUD, вызванные из дерева вызовов.
Примечание: из дерева вызовов никогда не существовало никакого перехода на матрицы и его никоим образом не добавили. А вот обратная навигация - из матрицы в дерево вызовов - существует давным-давно. Так что, этот пункт RNs - полная чушь, не заслуживающая ни балла, даже стоило снять несколько за введение в заблуждение.
Filter 0.7 из 1 возможного
Added a list with recent filter conditions to all the modules where the quick filter is used.
Добавлен список последних использованных фильтров во все модули, где применяется быстрый фильтр.
Число "всех" модулей с функцией быстрого фильтра ограничивается четырьмя окошками: главное дерево проекта, дерево кода рядом с редактором, дерево файлов для импорта в проект, дерево скриптов или диаграмм в мастерах экспорта. Да, это полезно иметь пополняемый список ранее набранных условий фильтрации. Каждый из них пополняется самостоятельно и хранится отдельно друг от дружки. Но интерфейсно такой функционал очень часто перекрывает рабочую область совершенно посторонних окон. Например, поставьте курсор в строку с фильтром дерева кода и откройте мастер заданий или генерации отчёта. В этом случае список условий фильтров останется висеть поверх всех окон, даже если это совершенно чужое приложение - интернет браузер или почтовый клиент, скриншоттер или видеоплеер. Поскольку тех.писательница не утруждала себя точным перечислением мест нововведения, и с новым компонентом выявился интерфейсный баг, то полный балл дать не за что.
Preferences 0.5+0.8+1+1+0.8=4.1 из 5 возможных
Preprocessor options in Preferences get inactive when the Preprocessor is enabled.
Опции препроцессора становятся неактивными в установках, когда препроцессор выключен.
Одно из правил зависимых опций - они должны переключаться согласованно, то есть если выключается "родительская" опция, то ни одна из её "дочерних" не должна терять своего значения, вместе с тем не иметь возможность к изменению и применению. Поэтому моё мнение тестировщика - это не улучшение интерфейса, а частичное исправление интерфейсной недоделки, потому что не все опции препроцессора стали зависимыми.
The folder where the preferences are saved or from which they are loaded is now restored on the next use.
Папка, где настройки были сохранены или из которой загружались, теперь восстанавливается для последующего использования.
Наконец-то программисты реализовали то, что должны были сделать изначально с самим функционалом сохранения и восстановления настроек. Это же как букварь для работ, касающихся папок и файлов. Существуют общепринятые правила полезности интерфейса: диалог для выбора папки и файла должен сохранять и восстанавливать последний использованный путь, по-умолчанию имя и расширение файла должно соответствовать функционалу и предлагаться по соответствующему шаблону. Так что, это новшество с точки зрения тестировщика следует считать исправлением недоделок.
Removed the Main Window page from Preferences as unnecessary.
Из настроек приложения убрана страница главного окна за ненадобностью.
В прошлых версиях CS убранная страница была предназначена для настройки в большей своей части подсказок. Поскольку система встроенных хелпов отработана с годами, то программисты посчитали их настройки ненужными. Изначально мне было не понятно, почему часть установок расположены на главной странице, а не в специальной интерфейсной. Но на момент их появления для них действительно не хватало свободного места, хотя логически им и сейчас не место на первой странице, где интерфейсность перемешана с функционалом. В качестве регресс-теста попробуйте восстановление настроек из файла, сохранённого в пред-предыдущей версии CS.
Moved the option to change the position of the code editor to the Code Editor page in Preferences, and renamed the option to “Display Code Editor below script analysis result.”
Перемещена опция для изменения позиции редактора кода на страницу настроек самого редактора и переименована.
В прошлой версии название опции ориентировалось на результаты анализатора и она была в числе настроек главного окна. Теперь наименование опции приближено к редактору, то есть в рамках приложения, делающего в основной своей массе анализ кода, этот самый процесс принижается до обычного редактора кода. В рамках теста стоит перепроверить сохранение и восстановление перемещённой опции, а также приведение к дефолтному состоянию. Странно, что дубликат опции на тулбаре редактора кода всё ещё имеется, хотя в настройках CS можно было бы и убрать её.
Renamed the “Code” page to “Code Editor” in Preferences.
Переименована страница кода в редактор кода.
Тех.писательница ошиблась в старом наименовании страницы, потому что вместо Code она называлась Editor. Но в хелпе и интерфейсе изменения сделаны логично. Это мелкий фикс из числа тех, что обычно не включают в RNs из-за низкой значимости. Но, тем не менее, балл билду приносит.
Online Support Desk 1+0.8=1.8 из 2 возможных
The process of the update downloading is now indicated on the Windows taskbar.
Процесс загрузки апдейта теперь отображается на таскбаре операционной системы.
Года три назад, когда один из программистов подправлял интерфейсный компонент, отображающий движение длительного процесса, это новшество уже актуализировалось. Но, видимо, после кардинальной смены интерфейса компонент сломался. Теперь старое вернули и называют его новинкой. Такой функционал интерфейса необходимо проверять на всех объявленных к поддержке версиях и разрешениях операционной среды (Windows 7-10, 100-150%, темы от стандартной до контрастной). Градусник на кнопке панели задач должен быть показан не только при активации иного приложения, но и во время параллельной активности CS на рабочем столе и в панели задач. Загрузку апдейта может проверить любой юзер, если включит режим ручного апдейта в окне OSD Updater и загрузит текущий билд.
Added the ability to attach files and images from the Clipboard.
Добавлена возможность прикреплять файлы и картинки из буфера обмена.
Очень полезное новшество давным-давно было предложено и наконец-то осуществлено по горячей клавише и из контекстного меню, как написано в хелпе. Картинкам автоматом присваиваются имена с порядковыми номерами, а другие файлы вставляются со своими именами и проверкой на дубликаты по имени. Одну странность не обработали - сообщение с только прикреплениями, но без заполненных других параметров, не предлагается к сохранению на закрытии окна. Поэтому балл не полный.
GUI 0.5 из 1 возможного
Renamed the “Export to/Import from” menu commands to avoid duplication in captions.
Переименована команда меню экспорта/импорта для избежания дублирования в заголовках.
Напомню, что в последних версиях в главном меню упразднён пункт утилит, а экспорт/импорт скриптов и диаграмм перенесены в "File". Новшество же заключается в том, что из подпунктов убрали префикс действия, уже имеющийся в верхнем пункте. Хоть и сущая мелочь, но изменение есть и приносит балл билду. Но о таких переименованиях нет смысла сообщать, поскольку они не несут никакой функциональной нагрузки. Странным считаю то, что в рамках этого RNs забыли о переименовании пункта логов анализа. Чтобы не снимать целый балл за забывчивость, лишь снижу стоимость текущего.
What’s New 0 из 1 возможного
The What’s New window is now shown only at the first application launch. To see this window each time, clear the selection of the “Don’t show this message again” check box.
Окно со списком новинок теперь показывается только при первом запуске приложения. Для того, чтобы увидеть это окно ещё раз, очистите галку о непоказе этого сообщения опять.
Окно с RNs почти изначально имело опцию для последующего скрытия без возможности её переключения через интерфейс продукта. Для возобновления показа при старте юзеру вручную можно обнулить опцию в одном из настроечных файлов. Чуть позже сделали показ только юзерам с купленной лицензией, а потом добавили пункт в главное меню для показа всем, но уже без означенной опции. А в последних версиях CS от этого списка в рамках продукта вообще смысла не стало, потому что десктопно показывается только первый пяток новшеств, а всё остальное надо искать на сайте ConquestSS. Конкретно это новшество является пустой припиской, поскольку абсолютно никакой разницы в версиях нет. Поэтому и баллов билду не приносит. А вот если бы тех.писательница сказала, что опция последующего непоказа теперь всегда включена, то можно было бы засчитать.
BUGS FIXED 1.5+0+0+0.5+0.6+0+0+1+1+1+0.8+0+0+1=7.4 из 7+2+1+1+2+1+1+2+2+2+1+1+1+2=26, -1-1=-2 за выявленные баги
Core 0.8+0+0.7+0+0+0+0=1.5 из 7 возможных, -1 за баг
A single-line comment is now highlighted correctly when it goes after a number.
Одностроковый комментарий теперь подсвечивается правильно, когда он идёт за числом.
Однострочный комментарий в Oracle начинается с двух символов минуса без пробела. Его шрифт и начертание определяется в "File / Preferences / Code Editor / Color / Elements / Comments". Может так случиться, что строка кода заканчивается числовым знаком, после которого приписан комментарий. В таком случае парсер CS в прошлом билде ошибался и воспринимал первый символ комментария обычным математическим знаком отнимания. Для лучшего понимания фикса тех.писательнице стоило вместо number использовать термин digit.
Fixed highlighting of search results in lines that include the TAB character.
Зафиксирована подсветка результатов поиска в строках, которые включают символ табуляции.
Странно, что модуль - не редактор кода, а общий основной. Для теста создадим текст в каждой строке которого вставим от нуля до пяти пробелов через символ табуляции. В каждой строке также должен быть набор искомых символов. Это может быть любой текст, совсем не похожий на код для анализатора. Вероятность того, что в вашем примере будет удачное сочетание символов и пробелов, конкретно для которых исправлен баг, близка к нулю. Подсветка всё также теряется, а курсор встаёт на соседнюю позицию от искомого сочетания. Никакого фикса не обнаружено, поэтому и балл дать не за что.
The words “left”, “right”, “outer”, “inner”, and “cross” are now treated and highlighted as reserved words.
Пять перечисленных слов теперь воспринимаются и подсвечиваются как служебные.
Для проверки фикса вставьте эти слова в любом порядке (лучше DML) без кавычек в текст кода и сделайте особые настройки в "File / Preferences / Code Editor / Color / Elements / Keywords = 'Text Attributes' + 'Text-typing conversion'" и "Analyze / Code Analyzer Options / Formatter Options / Case / Keywords". Проверьте применимость настроек в момент редактирования этих слов и после анализа скрипта с форматированием. Поскольку в мои примеры вошли запросы из документации Oracle, то выяснилось, что служебное слово "apply" из аналогичных DML не может быть обработан парсером CS, наряду с перечисленными. Вот и пример того, что фикс делается по принципу тупокодера, без включения мозгов и привлечения хотя бы юниора-тестировщика. Также выяснилось, что имелось ввиду форматирование кода на момент его ввода в редакторе, а не при форматировании анализатором продукта.
Fixed the highlighting of a literal if the opening bracket of a q-notation is followed by a break.
Зафиксирована подсветка литералов, если открытие скобок альтернативной нотации следует за прерыванием.
Этот баг касается лишь редактора кода, в котором единственном используется подсветка кода. Примечание: альтернативная нотация имеет специальные символы после апострофа. Абсолютно не могу понять, что имелось ввиду под словами, что нотация следует за прерыванием. Возможно, тех.писательница хотела сказать, что содержимое альтернативной нотации начинается с новой строки, но эта моя догадка не увенчалась успехом. Поэтому фикс засчитать не могу.
The error “Unable to retrieve memory usage structure” is no longer logged in the 64-bit version of the tool.
Ошибка невозможности изменить структуру использования памяти больше не логгируется в утилите 64-битной версии.
Лог приложения складируется в файле "%AppData%/Roaming/ClearSQL/CS.log" вне зависимости от используемой битности продукта. К сожалению, тех.писательница не соизволила описать условия, при которых могла случиться ошибка, и у меня нет идеи по воспроизведению. За пустоту не могу дать баллы.
The error “TSplashSteps.SetCurrent: item not in list.” is no longer raised on the application launch.
Ошибка окна старта, не вошедшего в список, больше не появляется на запуске приложения.
Судя по имени компонента, в окне не присвоено нулевое значение порядковому элементу. Такое возможно лишь при первом запуске CS на чистую машину. Но мой тест не показал устойчивое наличие бага в прошлом билде, поэтому никак не могу отметить его исправление.
An access violation error no longer occurs on closing the application right after it was started.
Ошибка доступа больше не случается на закрытии приложения сразу после его запуска.
CS никак невозможно закрыть сразу после запуска, потому что колесо открытия крутится довольно долго, а потом куча окон заставки и загрузки показывается. Так что, описанный баг - фикция и не приносит балл билду.
Project Tree 0+0=0 из 2 возможных
Fixed filtering by using wildcards.
Зафиксирована фильтрация с использованием пустых подстановок.
После того, как в дереве проекта менеджер фильтрации из набора опций превратился в единственную строку ввода, понимание его использования сильно усложнилось. При фильтрации в базе Oracle и в файлах используются разные символы подстановки, а о том, что их вообще можно использовать, сказано только глубоко в хелпе. По элементарным тестам у меня никак не получилось выяснить конкретику бага, поэтому не могу дать ни балла.
Fixed the direction of the arrow shown in the splitter when the Project Tree panel is closed.
Зафиксировано направление стрелки, показанной на разделителе, когда панель дерева проекта закрыта.
Направление стрелки на разделителе в прошлой и текущей версиях всегда соответствует логике, как при полном сворачивании дерева, так и при частичном. Поэтому описанный фикс никак не исправлялся и не получает ни балла.
Analyzer View 0 из 1 возможного
Updated the text shown in the Analyzer View panels when no project is loaded.
Обновлён текст, показываемый на панелях для просмотра анализатора, когда загружается проект.
Панелей анализатора очень много: Summary, Project Analysis History, диаграммы проекта (3 штуки), скриптовые панели (около 20 штук). Скорее всего текст слегка подкорректирован на одной из них, но тех.писательница поленилась уточнить. Проверять все 25 панелей смысла нет, поскольку вы запутаетесь в логике текстов. К сожалению, архитектура CS такова, что все панели не имеют стандартного шаблона для подобных сообщений и тестировщику придётся перепроверять каждое из них. Поскольку программист и тех.писательница не уважают своих пользователей и отписываются подобными общими фразами, то и заплатить за них следует лишь нулевым баллом.
Find Text / Find in Files 0.5 из 1 возможного
The progress dialog box that appears once the text replacement takes more than 5 seconds is now shown at the top of the main window, not in the Code Editor workspace.
Диалог прогресса, который однажды появляется при замене текста спустя 5 секунд теперь показан в верхней части главного окна, а не в рабочей области редактора кода.
Примечание 1: в CS существует две разные функции поиска - по тексту и по проекту с настройками. Примечание 2: поиск по тексту запускается через кнопки на тулбаре редактора кода в прошлой версии и через контекстное меню в текущей. Только по результатам тестов мне удалось выяснить, что текст фикса прямо противоположен сделанному. В прошлой версии градусник замен прорисовывался в верхнем левом углу всей рабочей области приложения, то есть на стыке дерева проекта и дерева кода, либо одной из закладок с результатами анализа скрипта, если редактор в нижнем положении. Теперь же диалог замен занимает более логичную позицию - по центру редактора кода. Для теста вам понадобится скрипт с возможной заменой более 1000 раз, например, явная вставка строк в таблицу или столько же дубликатов выборки (размноженная строка "select 1 from dual;") и замена во всех 1000 строках ("1" на "2"). Штраф за введение в заблуждение юзера - полбалла.
Analyzer Progress 0+0.6=0.6 из 2 возможных
When an analysis is running, click the close button in the Analyzer Progress window now shows a message suggesting the user to break the analysis.
Когда запущен анализ клик по кнопке закрытия в окне процесса анализа теперь показывает сообщение с предложением юзеру прервать анализ.
Во-первых, сразу при старте анализа кнопка закрытия окна всегда переименовывалась в прерывание. В этом плане текст фикса обманывает юзера. Во-вторых, предложение прервать анализ существовало изначально. То есть означенный фикс - пустая приписка в RNs, за которую не положено ни балла.
The options in the Analyzer Progress are now activated in the correct order on pressing TAB.
Опции в прогрессе анализа теперь активируется в правильном порядке при нажатии клавиши табуляции.
Называя интерфейсные элементы опциями тех.писательница сбивает юзера с толку тем понятием, что текст фикса воспринимается неоднозначно. Если точно следовать описанию, то по нажатию табулятора в окне прогресса анализа ожидалось бы переключение значений настроек анализа, а на самом деле активный курсор всего лишь переходит по элементам в более логичном порядке. Но и даже после этой правки активный курсор на один клик куда-то пропадает также на обеих закладках, не подсвечивая ни один из видимых интерфейсных элементов. Поэтому никак не могу дать полный балл.
Code Review Rules 0 из 1 возможного
The duplicated code detector no longer detects false-positive duplicates on the sets of string/numeric literals.
Определитель дубликата кода больше не находит фальшиво-позитивные дубликаты на установках символьно-числовых литералов.
К сожалению, формулировка фикса такова, что мне никак не удаётся впихнуть в неё все мои знания о встроенном правиле 182 "Avoid duplicate code". Тех.писательница так намудрила с терминами, что текст превратился в абракадабру. Поэтому билд теряет балл.
Project Report Assistant 0 из 1 возможного
The error “No mapping for the Unicode character exists in the target multi-byte code page” no longer occurs on trying to generate a report with international characters in the report name or path.
Ошибка об необнаруженных юникодных символах в принимающей мультибайтовой странице кода больше не случается при попытке сформировать отчёт с интернациональными символами в заголовке или пути отчёта.
Из описания бага может показаться, что для теста достаточно создать проект и его отчёт (File / HTML Report), имена которых будут содержать интернациональные символы, то есть обычную латиницу. Но на самом деле текст фикса является полной чушью, и проблема скорее всего была с каким-то особым символом или набором, о котором умолчала тех.писательница. Поэтому пункт RNs не приносит балла билду.
Search 0+1=1 из 2 возможных
The instant help button is now always shown in the header of the Search tab.
Кнопка мгновенной помощи теперь всегда показывается в заголовке закладки поиска.
Поскольку нет никакой конкретики, при каких случаях эта кнопка пропадала, то и нечего проверить. А значит и балл дать не за что.
Navigating to a search result item is no longer slowed down while the search is still in progress.
Навигация на элемент результата поиска больше не замедляет процесс поиска.
Для того, чтобы хоть как-то заметить ускорение процесса поиска, рекомендую выводить результаты не в отдельную панель, а на самостоятельную закладку. А для работы создать проект с огромным количеством скриптов, в которых запустите поиск. Но и эти данные для нагрузочного теста маловероятно покажут сделанное внутри изменение. Так что, дам авансом балл уже за то, что техническое исправление столь грамотно описано.
Analysis Logs 0.5+0.5=1 из 2 возможных, -1 за баг
Fixed positioning of the drop-down list.
Зафиксирована позиция выпадающего списка.
Напомню, что список логов анализа проектов доступен в новых версиях из главного меню "Analyze / Manage Project Analysis Logs", а настройки "File / Preferences / Project Analysis / Log". Осторожно! При первом открытии списка вам будет предложено удалить какие-то якобы несуществующие файлы, которые всё-равно удалятся, даже если вы откажитесь. Это довольно критичный баг, за который следует снять балл. Для сравнения внешних изменений окна достаточно сделать скриншот и убедиться, что лишний сплиттер исчез из под комбобокса, а ширина списка проектов стала настолько больше, что в этой пустоте могло бы имя проекта уместиться дважды. Странно, что программисты не применили здесь столь уместную функцию автоподбора ширины. Также подмечено, что в файлах с логами анализатора русский алфавит, особенно в полнопрописных датах, отображается исковеркаными символами. За тупой фикс без приложения сообразительности дам не полный балл.
Added the ability to resize the Analysis Logs window.
Добавлена возможность изменять величину окна с логами анализа.
Во-первых, это не исправление бага, а дополнительное удобство интерфейса. Во-вторых, установленные минимальные размеры слабо коррелируются с имеющимся контентом: никакой эргономики свободного пространства, элементы несоразмерные и перекрываются, автоподбор размера шрифта и рисунка не применяется. И так всегда, программист в попытке усовершенствовать наоборот портит изделие. Если бы этот пункт RNs был в новинках, то можно было бы дать балл, но поскольку фикс породил множество проблем, то, вместо снятия баллов за каждую погрешность, всего лишь недодам за этот.
Job and Schedule Manager 0+1=1 из 2 возможных, -1 за баг
Disabling the Preprocessor in the job’s Preferences no longer affects the state of the Preprocessor at the application level.
Выключение препроцессора в настройках заданий больше не отражается на статусе препроцессора уровня приложения.
Одно время система настроек задания была полностью отделена от глобальных установок приложения. Но в какой-то версии CS эта давно работающая система сломалась. Кроме статуса препроцессора мастер заданий портит и другие настройки приложения, например, переоткрытие CS всегда сопровождается показом старт-окна, если в предыдущей сессии хотя бы раз открывался мастер заданий. За этот баг есть смысл снять балл. А за отсутствовавший баг о препроцессоре в прошлом билде и его фиктивную правку ничего дать не могу, поскольку любые изменения опции в рамках задания "Analyze / Job and Scheduler Manager / Preferences (Job) / Preprocessor / Enable Preprocessor" никак не отражались и не отражаются на состоянии препроцессора, видимом в главном меню "Analyze / Preprocessor is ON-OFF".
It is no longer possible to save a job or schedule without a job name.
Больше нет возможности сохранить задание или расписание без имени задания.
В предыдущем и текущем билдах не было и нет возможности создать задание без имени, но если оно было случайно удалено в процессе правки, то последующее сохранение задания было возможным в прошлом билде. Зачем внесли обязательность наличия имени задания? Вероятно, последующее его исполнение или передача в операционную систему была затруднена и проверка обязательного поля добавлена к пересохранению объекта.
System Information 0.8 из 1 возможного
TNS_ADMIN registry values are now included in the system information.
Величины реестра об администраторских настройках tns теперь включены в системную информацию.
Немного теории о клиенте Oracle. Одна из разновидностей подключения к базе нуждается в настройке TNS через служебный файл "tnsnames.ora" и пути к нему, прописанные в переменных окружения, либо реестре. Если вы используете коннект к базе не через tns, но хотите увидеть фикс бага, то добавьте вышеозначенную величину в переменные окружения и реестр "HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE", а после перезагрузки компа и приложения посмотрите в "Help / System Information". Только не стоит подключаться к базе, если вы не уверены в правильности введённых вами величин. Фикс сделан, но его место не в числе багов, поэтому снижу балл.
View Differences 0 из 1 возможного
The “View Differences” window no longer opens on trying to compare scripts linked to a database object that belongs to a database to which ClearSQL cannot connect.
Окно просмотра различий больше не открывается при попытке сравнить скрипты, слинкованные с объектом базы, которые нацелены на базу, с которой у ClearSQL нет коннекта.
Исходная ситуация такова: в проекте имеется слинкованный с базой скрипт, CS ещё не коннектился к базе, но юзер желает сравнить содержимое скрипта с его связанным объектом. Логичнее в таком случае сначала запросить из свойств скрипта параметры линковки, предложить или авто-подключиться к базе, найти в ней нужный объект, а в случае невозможности подключиться к базе сообщить причину отсутствия сравнения. Но программист пошёл по пути наименьшего сопротивления и просто прервал работу юзера, ничего для него не сделав. Да, это тоже фикс бага, но совершенно не удовлетворяющий качеству продукта с точки зрения пользователя. Моя же попытка увидеть баг в прошлом билде и его фикс в текущем не увенчалась успехом - работа CS ничуть не изменилась. Поэтому пункт RNs не приносит билду ни балла за ложь тех.писательницы и ничегонеделанье программиста.
Instrumented Code 0 из 1 возможного
The anonymous block numbers are now shown in the Instrumented Code tree.
Номера анонимных блоков теперь показаны в дереве инструментатора кода.
Инструментор кода - фича скриптовая, а поскольку речь в баге о некоем количестве анонимных блоков, то для теста нам понадобится сложный скрипт, не являющийся телом пакета, а всего лишь объединяющий несколько независимых PL/SQL блоков, не являющихся какими-нибудь подпрограммами. То есть, можно взять тело любого пакета или объектного типа, заменить все заголовки на служебное слово declare, тогда и останутся несколько анонимных блоков в одном скрипте. Если бы этот пункт RNs был в числе новшеств, то стоило бы поискать наличие блоков в инструментере кода, но поскольку это баг, то что-либо проверять бесполезно. На самом деле инструментор кода вообще не применим к скриптам с анонимными блоками. Так что, фикс - полная чушь, не приносящая билду столь желанный балл.
Preferences 1+0=1 из 2 возможных
Switching off the “Insert Mode” on the Code Editor page no longer raises an access violation error on the application launch.
Выключение режима вставки на странице редактора кода больше не даёт ошибки доступа при запуске приложения.
Поскольку в ConquestSS нет тестировщиков и отсутствует всякое тестирование, даже смоук, то меня ни чуть не удивляет, что такой страшный баг регрессии был в прошлом билде. CS абсолютно не запускался при выключенной опции вставки.
Fixed the ability to load preferences from a file.
Зафиксирована возможность загрузки настроек из файла.
К сожалению, тех.писательница не уточнила причину ошибки, поэтому нет никаких идей, в чём же конкретно загрузка настроек из файла глючила ранее. А поскольку не известно, как поймать баг в предыдущем билде, то и нет возможности увидеть правку. За нулевые исправления даю и нулевые баллы.
Итого по билду: 12.2+7.4=19.6 из 22+26=48 возможных, что составляет 19.6/48=41% готовности билда, -0.3-2=-2.3 баллов снимаю за баги.
Комментариев нет:
Отправить комментарий