v1.14.0
Главное в этой версии
Индекс выгрузки больше не теряет модули молча. Имя модуля выводится из того, где файл лежит в каталогах выгрузки. Если каталог, указанный в --dump, оказывался на уровень выше настоящего корня, разные файлы получали одно и то же имя, и второй молча затирал первый. Счётчик при этом продолжал показывать полное число найденных файлов, поэтому потеря ничем себя не выдавала: инструмент отвечал по уцелевшей части кода и сообщал, что в индексе все модули. На реальной выгрузке из 13575 файлов в индекс попадало 2736 имён, то есть терялось около восьмидесяти процентов кода, и ни одного признака этого в ответах не было. Теперь имя выводится от настоящего корня независимо от того, на какой уровень указан каталог.
Поиск по коду и перезагрузка выгрузки предупреждают, если совпадения по именам всё же остались. Число таких совпадений называется прямо в ответе, поэтому потеря перестала быть невидимой даже там, где её не удалось предотвратить.
Инструмент называет настоящий корень выгрузки, если указан не он. Проверяется, не лежит ли корень выгрузки внутри указанного каталога, и в этом случае прямо называется путь, который следует указать.
Расширения распознаются в том виде, в каком их выгружает платформа. Раньше расширение находилось только в одной раскладке каталогов, которую ни Конфигуратор, ни ibcmd на самом деле не создают. Теперь поддержаны обе раскладки, которые платформа выдаёт: выгрузка всех расширений сразу, где каждому отводится свой каталог с его именем, и выгрузка одного расширения, где содержимое лежит в указанном каталоге напрямую. Расширение опознаётся по своему манифесту, а не по имени каталога, потому что имя каталога с именем расширения совпадает не всегда. Заодно исправлена подсказка: она советовала выгрузить расширения командой, которая нужной раскладки дать не может, то есть выполнение совета не помогало.
Список распознаваемых видов объектов расширен. В него добавлены боты и модули самой конфигурации.
Счётчик найденного означает то, что написано. В умном поиске считались модули, а в точном и по регулярному выражению строки, и в ответе оба назывались одинаково. Одно и то же число означало разное в зависимости от вида поиска, и сравнивать их между собой было нельзя. Теперь подпись соответствует тому, что посчитано.
Изменение поведения, на которое стоит обратить внимание
Первый запуск после обновления пересоберёт индекс. Формат кэша изменился, потому что изменилось само правило вывода имён модулей: старый кэш содержит имена, выведенные по прежнему правилу, и повторно использовать его нельзя. Пересборка выполняется один раз на каждую базу, дальше запуск идёт как обычно.
Пока рядом остаётся более старая версия, пересборка может повторяться. Кэш индекса привязан к пути выгрузки, а не к версии программы, поэтому если на одну и ту же выгрузку смотрят и эта версия, и версия ниже 1.14.0, то более старая при своём запуске уберёт индекс, собранный этой. Обратное неверно: эта версия чужой индекс не трогает. Повторные сборки прекращаются, когда обновлены все версии, работающие с этой выгрузкой.
В заголовке каждого результата search_code больше нет кавычек. Изменение затрагивает только вид заголовка, состав и порядок результатов прежние. Если ваш разбор ответа опирался на кавычки в этой строке, его нужно поправить.
Расширение 1С
Расширение в этой версии не менялось. Требуется по прежнему 0.4.7, и это та же самая сборка, что была приложена к v1.13.0: файл MCP_HTTPService.cfe в этом релизе побайтово совпадает с файлом из v1.13.0. Если у вас уже стоит 0.4.7, делать ничего не нужно.
Если расширение старее, обновите его той же командой, которой оно устанавливается: установщик сам снимет старую версию и загрузит новую.
mcp-1c --install "C:\путь\к\базе"
Для клиент-серверной базы добавьте --server и строку подключения вида сервер\база, а при необходимости --db-user и --db-password. Перед установкой закройте все сеансы 1С для этой базы, включая Конфигуратор.
Проверить, что обновление доехало:
curl http://сервер/база/hs/mcp-1c/versionОжидаемый ответ: {"version":"0.4.7"}
Проверка контрольных сумм
К релизу приложен checksums.txt со строкой для каждого файла, включая расширение.
shasum -a 256 -c checksums.txt --ignore-missingFull Changelog: v1.13.0...v1.14.0
Установка расширения 1С через Конфигуратор
Для пользователей, у которых нет доступа к командной строке на сервере 1С
(например, при аренде 1С через RDP):
- Скачайте
MCP_HTTPService.cfe(SHA256 вchecksums.txt). - В Конфигураторе: Конфигурация -> Расширения конфигурации -> Добавить -> «Добавить из файла» -> выбрать
.cfe. - Убедитесь, что стоит флаг «Активно». Нажмите F7 (Обновить конфигурацию базы данных).
Расширение объявляет режим совместимости Version8_3_14, поэтому загружается
на 1С:Предприятие 8.3.14 и выше.
На базах с включёнными профилями безопасности (8.3.21+) перед загрузкой
может потребоваться снять «Защиту от опасных действий» в свойствах расширения.