Появилась новая версия Go с автоматическим кэшированием результатов сборки и тестирования. Версия 1.10 является первым крупным релизом после анонса Go 2.0.
Go-это проект с открытым исходным кодом, разработанный командой Google и многими участниками сообщества с открытым исходным кодом на протяжении более 8 лет. Основное предназначение-использование в качестве языка системного программирования, и он был использован в громких коммерческих успехах, таких как Docker.
Несмотря на некоторые незначительные изменения в языке, большинство его изменений связаны с реализацией набора инструментов, среды выполнения и библиотек.Изменения в инструментах предназначены для улучшения тестирования в крупных и очень крупных проектах и подготовки к Go 2.0. Улучшения обеспечивают лучшее кэширование встроенных пакетов, добавляют кэширование успешных результатов тестирования, автоматически запускают vet во время тестов и позволяют передавать строковые значения непосредственно между Go и C с помощью cgo.
Теперь Go build может обнаруживать изменения в файлах на уровне исходного кода, а не полагаться на временные метки, что означает, что он будет более точным при восстановлении измененных пакетов.
Изменения в тесте go означают, что теперь он будет кэшировать результаты тестов, если они соответствуют определенным критериям, таким как:
исполняемый файл теста и командная строка соответствуют предыдущему запуску
файлы и переменные среды, используемые этим запуском, не изменились
результаты успешны
команда go test получила список пакетов для тестирования, go test ./… например
в командной строке теста используется подмножество флагов теста:- cpu,- list,- parallel, — run, -short и-v
Чтобы отпраздновать выпуск, группы пользователей Go по всему миру проводят вечеринки по выпуску.