Вышла бета-версия Go 1.16

30.12.2020      18126

Предстоящее обновление языка программирования Go 1.16 с открытым исходным кодом включает поддержку процессора Apple, улучшения базовой библиотеки и среды выполнения. Релиз стабильной версии намечается на февраль 2021 года.

Библиотека

Изменения в основной библиотеке в Go 1.16 включают новый embed пакет, который предлагает доступ к файлам, встроенным в программу во время компиляции, через //go:embed директиву. В библиотеку также были внесены незначительные изменения и обновления. Изменения варьируются от устаревания crypto/dsa до обновления unicode пакета до Unicode 13.0.0.

В основной библиотеке также улучшены файловые системы. Новый io/fs пакет определяет абстракцию для деревьев файлов, доступных только для чтения fs.FS. Интерфейс и стандартные пакеты библиотек были адаптированы для использования интерфейса при необходимости. Новый embed.FS тип реализует fs.FS, так же как это делает zip.Reader. Новая os.DirFS функция обеспечивает реализацию fs.FS, поддерживаемых деревом файлов операционной системы. Со стороны потребителя новая http.FS функция преобразует объект fs.FS в http.Handler. Кроме того, html.template и text/template пакеты получили ParseFS функции и методы чтения шаблонов с fs.FS. Для тестирования кода, который реализует fs.FS, новый testing/fstest пакет предоставляет TestFS функцию. Она проводит проверку и сообщает о типичных ошибках. Он также обеспечивает простую реализацию файловой системы в памяти MapFS, которая может быть полезна для тестирования кода, принимающего fs.FS реализации.

Среда выполнения

Go 1.16 также вносит улучшения в среду выполнения. Новый runtime/metrics пакет представляет стабильный интерфейс для чтения метрик, определенных реализацией. В Linux среда выполнения Go теперь по умолчанию быстро освобождает память для операционной системы с использованием MADV_DONTNEED. Это означает, что статистика памяти на уровне процесса, такая как RSS, будет более точно отражать объем физической памяти, используемой процессами Go. Системам, которые в настоящее время используются GODEBUG=madvdontneed=1 для улучшения поведения мониторинга памяти, больше не нужно устанавливать эту переменную среды. 

В Go 1.16 также исправлено несоответствие между Race-детектором и моделью памяти Go. Детектор более точно следует правилам синхронизации каналов модели памяти. Таким образом, он может сообщать о забегах, которые ранее были пропущены.

О выпуске первой бета-версии было объявлено 17 декабря. Текущая линейка выпусков Go 1.15 появилась в августе. В прошлом году языку программирования Go исполнилось 10 лет, а в июне 2020-го он попал в список самых высокооплачиваемых языков программирования по версии Stack Overflow.

 

 

Другие изменения

  • 64-разрядный процессор ARM-архитектуры на MacOS, также известный как Apple Silicon, поддерживается с G00S=darwin, GOARCH=arm64. Как и darwin/amd64 порт, darwin/arm64 поддерживает порт ОЦП, внутренние и внешние ссылки, c-archive, c-shared и pie режимы сборки. Go 1.16 добавляет ios/amd64 порт, предназначенный для симулятора iOS, работающего в macOS на базе AMD64. Раньше это неофициально поддерживалось darwin/amd64 с помощью ios набора тегов сборки.
  • Компилятор может встраивать функции с немаркированными for циклами, значениями методов и переключателями типов. Инлайнер также может обнаруживать больше встраиваемых вызовов.
  • Улучшения компоновщика сокращают использование ресурсов и улучшают ремонтопригодность кода. Это часть плана по модернизации компоновщика.
  • Режим с поддержкой модулей включен по умолчанию.
  • Команда go поддерживает включение статических файлов и файловых древ как часть окончательного исполняемого файла с помощью новой //go:embed директивы.
  • Новая GOVCS переменная среды ограничивает инструменты управления версиями, которые go команда может использовать для загрузки исходного кода. Это снижает проблемы безопасности с помощью инструментов, которые обычно используются в надежных средах с проверкой подлинности.
  • Go 1.16 – последний выпуск, который будет работать на MacOS Sierra. Go 1.17 потребует MacOS 10.13 High Sierra или новее.

Автор:
Обозреватель


См. также

Новость ИТ-Новость

Минцифры подготовило проект постановления по запуску платформы, на которой ИТ-специалисты могут пройти добровольное тестирование и подтвердить свою квалификацию.

11.12.2024    454    user1915669    2       

2

Новость ИТ-Новость ФНС ЭДО

Федеральная налоговая служба запустила интерактивный сервис, позволяющий формировать в машиночитаемом виде договоры, контракты, соглашения и спецификации. Чтобы создать документ и скачать получившийся файл, регистрация не требуется.

03.12.2024    564    user2114475    0       

2

Новость ИТ-Новость

Российский Альянс по искусственному интеллекту обновил требования к специалистам по ИИ: вышла новая модель с основными профессиями и навыками. Теперь базовых профессий в сфере ИИ осталось только четыре.

01.11.2024    785    user1915669    0       

3

Новость ИТ-Новость

Система платежей «Волна» по планам сделает возможной бесконтактную оплату для владельцев IPhone в России, а BRICS Pay позволит совершать безналичные расчеты иностранцам по картам Visa и Mastercard.

23.10.2024    1000    AnastasiaKl    0       

4

Новость ИТ-компания ИТ-Новость

Конструктор сайтов Wix уходит из России с 12 сентября 2024 года – перестанут работать все российский аккаунты. Сайты, привязанные к аккаунтам, также перестанут работать.

11.09.2024    1006    user1915669    2       

2

Новость Искусственный интеллект ИТ-Новость

ИИ научат разработке цифровых интегральных микросхем – несколько российских научных институтов заявили об участии в проекте. Проект рассчитан на 3 года – с 2024 по 2026.

23.07.2024    642    user1915669    0       

2

Новость Дата-центры Искусственный интеллект ИТ-Новость

Развитие искусственного интеллекта и цифровых сервисов в России стало причиной роста потребности в мощных центрах обработки данных. Эксперты прогнозируют, что дефицит ЦОД, который уже наблюдается сегодня, в ближайшие годы будет только усиливаться.

18.07.2024    788    AnastasiaKl    0       

1

Новость ИТ-Новость

В сентябре 2024 года видеоигры в России начнут маркировать – пока на добровольной основе. Геймерам будут сообщать о семи видах чувствительного (неприятного) контента в игре.

17.07.2024    857    user1915669    0       

1
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
Оставьте свое сообщение