1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/CarGuo-GSYFlutterBook

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Dart-216.md 8.6 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 10.03.2025 00:06 5767d61

Сегодня вышел Dart 2.16 вместе с Flutter 2.10. Новая версия не включает новых языковых возможностей, но предлагает множество исправлений ошибок (в том числе связанных с безопасностью), улучшенную поддержку пакетов Dart на конкретных платформах и новую систему поиска на pub.dev.

Dart 2.16

SDK Dart 2.16, выпущенный сегодня вместе с Flutter 2.10, продолжает переход от традиционных командной строки Dart (например, dartfmt, dartdoc и т.д.) к объединённому инструменту разработки dart. В новой версии устарели инструменты dartdoc (теперь используйте dart doc) и dartanalyzer (теперь используйте dart analyze).

В Dart 2.17 планируется полное удаление команд dartdoc, dartanalyzer и pub (устарели в Dart 2.15; теперь используйте dart pub или flutter pub). Подробнее см. #46100.

В версию 2.16 также вошли исправление безопасности и два небольших изменения:

  • API HttpClient в модуле dart:io позволяет опционально установить заголовки authorization, www-authenticate, cookie и cookie2. В предыдущих версиях SDK реализация логики переадресации содержала уязвимость, которая позволяла передачу этих заголовков (которые могут содержать конфиденциальную информацию) при кросс-доменной переадресации. В Dart 2.16 эти заголовки больше не передаются.

  • API Directory.rename в модуле dart:io изменилось поведение на платформе Windows: он больше не удаляет существующие каталоги, совпадающие по имени с целевым каталогом (#47653).- Удалены API Platform.packageRoot и Isolate.packageRoot, оставленные со времен Dart 1.x и не работавшие в Dart 2.x (issue #47769).

Для получения более подробной информации о изменениях в Dart Yöntem 2.16 обратитесь к журналу изменений: https://github.com/dart-lang/sdk/blob/master/CHANGELOG.md#2160.

Поддержка объявлений платформ для пакетов pub.dev

Dart сам по себе предназначен для переносимости, мы стремимся сделать код работающим на большем количестве платформ, однако иногда вам может потребоваться создание и распространение пакетов pub.dev, специализирующихся на одной или нескольких платформах. Вы можете иметь пакет, зависящий от API доступных только на определенной операционной системе, или библиотеку, использующую dart:ffi, поддерживающуюся только на Native платформе, а не на Web. Используя Dart 2.16, вы теперь можете вручную указывать набор поддерживаемых платформ в pubspec пакета, например, если ваш пакет поддерживает только Windows и macOS, то его файл pubspec.yaml может выглядеть следующим образом:

name: mypackage
version: 1.0.0
platforms:
  windows: true
  macos: true
dependencies:

Новый тег platforms применим при разработке Dart-пакетов; если вы разрабатываете и распространяете плагины Flutter, содержащие код, специфичный для конкретной платформы (например, Kotlin или Swift), обычно используется тег Flutter-плагинов, который указывает поддерживаемые платформы.## Новый пользовательский интерфейс поиска на pub.dev

Ответом на запросы разработчиков, мы предоставили лучшую поддержку для поиска пакетов на pub.dev. Основная цель изменений, выпущенных сегодня, — помочь разработчикам лучше распознавать и находить пакеты с поддержкой определённых платформ. Вот как выглядит новое окружение поиска:

Скриншот

Новый интерфейс поиска имеет боковую панель фильтров поиска слева, которую можно использовать для ограничения ваших поисковых запросов пакетами:

  • Платформы: выберите одну или несколько платформ, чтобы сузить результаты поиска до пакетов, поддерживающих все выбранные платформы.
  • SDK: выберите Dart или Flutter, чтобы ограничить результаты пакетами, поддерживающими соответственно Dart SDK или Flutter SDK.
  • Дополнительно: дополнительные опции поиска, такие как фильтрация по любимым пакетам Flutter.

Обновление по безопасности нулевых значений

С тех пор как мы в последний раз говорили о безопасности нулевых значений, было выпущено несколько версий. Это основное языковое добавление, представленное год назад в Dart 2.12.

Мы были удивлены скоростью миграции пакетов Dart-экосистемы для поддержки безопасности нулевых значений:> На данный момент 100% из первых 250 пакетов и 96% из первых 1000 пакетов поддерживают безопасность нулевых значений! Благодарим всех авторов за этот замечательный успех.Мы также видим хороший прогресс в переходе приложений к надёжной безопасности нулевых значений. По нашим данным, 71% всех сессий работы с инструментами Flutter сейчас имеют полную надёжную безопасность нулевых значений. Если вы разработчик приложений, но ещё не перешли на безопасность нулевых значений, то это отличное время для этого.

Заключение

Мы надеемся, что новый интерфейс поиска на pub.dev будет вам полезен. Мы всегда рады получать ваш отзыв. Будьте в курсе планов выпуска следующего SDK Dart во втором квартале 2022 года, когда мы будем работать над некоторыми впечатляющими языковыми возможностями, которые мы планируем представить в этом году. > https://github.com/dart-lang/language/projects/1

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/CarGuo-GSYFlutterBook.git
git@api.gitlife.ru:oschina-mirror/CarGuo-GSYFlutterBook.git
oschina-mirror
CarGuo-GSYFlutterBook
CarGuo-GSYFlutterBook
master