Scala-дайджест (10 мая – 1 июня)

Scala 2.13.0-M4 и новые коллекции

Переработка коллекций некоторое время была отдельным проектом, который, начиная со scala-2.13-M4, был полностью перенесен в библиотеку языка. Внутреннее устройство стало проще, сократилось количество абстракций (прощайте, CanBuildFrom и Traversable). API сохранен максимально, но код изменять придётся (прощайте, scala.collection.Seq и Stream). Производительность пытаются выдерживать не хуже предыдущей версии (по крайней мере, пока). Ленивые коллекции стали более ленивыми — появилась потенциальная возможность для введения fusion/deforestation. В исходном репозитории всё еще функционирует багтрекер, и это хорошее место для желающих внести вклад в проект — достаточное количество простых тасков. Ченжлог M4 можно посмотреть на GitHub.

Переход с BSD-3 на Apache 2.0

В августе все проекты, принадлежащие организации Scala, будут переведены с BSD-лицензии на Apache 2.0. Но не стоит переживать, никаких проблем с законом. Дело в том, что BSD никак не учитывает наличие CLA, которую обязан подписывать каждый желающий законтрибьютить в Scala. C лицензией Apache 2.0 такой проблемы нет, да и текущий CLA основан на апачевской ICLA. В этой заметке, написанной Adriaan Moors, можно найти ссылки на интересные посты, объясняющие причины необходимости CLA.

ScalaDays Berlin

С 14 по 17 мая в Берлине прошла одна из самых значимых Scala-конференций. Если вас там не было, то по ссылке можно ознакомиться с впечатлениями от конференции и итогами.

sbt 1.1.5 и 1.1.6

Вышел очередной релиз sbt 1.1.5 c небольшим набором фиксов и улучшений. Несмотря на то, что это всего лишь патч-релиз, есть две вещи, которые действительно стоит отметить:

  • Новое расширение для Visual Studio Code. С его помощью можно стартовать sbt прямо из редактора и довольно сносно переходить на нужные строки в случае ошибок при компиляции;
  • К документации была добавлена страница «sbt by example». Если до этого вы не тратили время на изучение sbt, теперь можно разом пробежаться по всем основным примерам использования и составить общее представление о нём. Раньше же приходилось либо бегать по куче страниц со скромными сниппетами, либо искать примеры на GitHub, либо сдаваться и ныть «какой же этот sbt сложный».

Одновременно со ScalaDays прошло мероприятие Scala Spree. Его целью является облегчение порога входа в проект. На встрече была возможность законтрибьютить в популярные проекты и поработать вместе с основными мэйнтейнерами. По итогам, в sbt добавилась еще одна патч-версия с разнообразными фиксами.

Scala Developer Survey 2018

Lightbend, Scala Center и EPFL сделали первый опросник по Scala и планируют продолжать делать его каждый год. Опросник открыт до 7 июля, ознакомиться с ним можно по ссылке.

Scalar 2018 Whiteboard Voting Result

Помимо видео с конференции Scalar также опубликованы результаты голосования на досках среди библиотек/фреймворков/подходов. Лидеры вполне ожидамые, но посмотреть соотношение с остальными кандидатами тоже интересно.

JaxEnter Technology Trends 2018

По результатам опроса от JaxEnter на тему популярности фреймворков Akka (41%) продолжает дышать в спину Spring Boot (50%+). Хотя в то же время оба из них стали менее популярными по сравнению с прошлым годом. Play, получивший 25% в 2017 году, просто исчез. Так что к методике проведения остаются вопросы. Ознакомиться с опросом можно по ссылке.

GitHub Top 1000

Обновлен рейтинг Scala-репозиториев, сортировка идёт по звездам. Проект собирает данные и по другим популярным языкам и в какой-то мере отражает общую популярность языков. Например, топовый репозитарий на Java набрал 37 тысяч звезд, а топовый репозиторий Scala — 17, что тоже весьма неплохо.

Scala и GraalVM

Scala-сообщество также не обошло стороной GraalVM. Появилась статья в блоге Playframework с замерами, насколько быстрее Play на Граале, а разработчик Sangria попробовал затюнить время старта. Также отметились http4s с демкой на Граале, а некие cloudscala выложили стартовый репозиторий и Docker c образами для сборки Scala-проектов.

Дайджест готовили

  • Редакция JUG.ru Group:
    • Олег Чирухин (контент, верстка, проверка фактов);
  • Эксперты:
    • Вадим Челышов из подкаста Scalalaz;
    • Данила Матвеев – один из организаторов Scala-митапов в Москве.