Monthly Archives: Май 2017

Релиз фреймворка Qt 5.9

Автор   31.05.2017

После полугода разработки представлен релиз кроссплатформенного фреймворка Qt 5.9, который причислен к категории LTS-выпусков, обновления для которых выпускаются в течение трёх лет. Исходные тексты компонентов Qt поставляются под лицензиями LGPLv3 и GPLv2, инструменты Qt для разработчиков, такие как Qt Creator и qmake, а также некоторые модули поставляются под лицензией GPLv3.

Основные изменения:

  • В состав модуля Qt Core включено два новых класса: qfloat16 для манипуляции 16-разрядными числами с плавающей запятой, позволяющий улучшить совместимость с API, связанными с GPU; QOperatingSystemVersion для определения операционной системы и версии запущенного приложения;
  • В модуль Qt Network добавлена поддержка протокола HSTS (HTTP Strict Transport Security), позволяющего владельцам сайтов указать о необходимости использования шифрованного соединения (далее…)

Просмотры: 143
1 Звезда2 Звезды3 Звезды4 Звезды5 Звёзд
Loading...

Выпуск серверной JavaScript-платформы Node.js 8.0

Автор   31.05.2017

Представлен релиз Node.js 8.0.0, платформы для выполнения высокопроизводительных сетевых приложений на языке JavaScript. Node.js 8.0 относится к веткам с длительным сроком поддержки, но данный статус будет присвоен только в октябре, после проведения стабилизации. Время выпуска обновлений для LTS-веток составляет 4 года. Поддержка прошлой LTS-ветки Node.js 6.0 продлится до 2020 года, а позапрошлой LTS-ветки 4.x до апреля 2018 года. Поддержка промежуточной ветки Node.js 7.0 будет прекращена в июле 2017 года.

Из улучшений в Node.js 7.0 отмечается обновление движка V8 до версии 5.8, в которой реализована новая схема компиляции, основанная на применении интерпретатора Ignition и JIT-компилятора Turbofan. Новая схема примечательна повышением производительности выполнения JavaScript-приложений и снижением расхода памяти. В V8 5.8 также представлен новый подход к стабилизации — ABI данной версии будет совместим с V8 5.9 и 6.0, что позволит реализовать обновление движка V8 до новых выпусков в рамках жизненного цикла ветки Node.js 8.x.

Среди других изменений:

  • Новый Node.js API (N-API), предоставляющий средства для создания нативных дополнений к Node.js, не привязанных к JavaScript runtime и рассматриваемых как часть Node.js. Для подобных дополнений будет обеспечен неизменный ABI, позволяющий без перекомпиляции использовать дополнение с разными версиями Node.js и даже с разными JavaScript-движками (V8 и Chakra-Core);
  • Добавлена экспериментальная поддержка асинхронных обработчиков (модуль async_hooks), через которые можно выполнять мониторинг операций в цикле обработки событий, отслеживать асинхронные запросы и полностью контролировать весь жизненный цикл работы приложения;
  • В классе URL обеспечена полная поддержка стандарта WHATWG, определяющего требования к оформлению URL и API для разбора URL, представляемый браузерами;
  • В классе Buffer представлена серия новых методов формирования буфера, таких как Buffer.alloc(), Buffer.allocUnsafe() и Buffer.from(). При вызове устаревшего конструктура Buffer(num) программе теперь выделяется обнулённый блок памяти (ранее память не инициализировалась, (далее…)

Просмотры: 338
1 Звезда2 Звезды3 Звезды4 Звезды5 Звёзд
Loading...

Google прекращает поддержку Portable Native Client в пользу WebAssembly

Автор   31.05.2017

Компания Google объявила о переводе технологии PNaCl (Portable Native Client) в разряд устаревших. Поддержка PNaCl в Chrome будет прекращена в первом квартале 2018 года, но возможность использования PNaCl в дополнениях к Chrome и приложениях Chrome Apps ещё какое-то время будет сохранена.

Разработчикам рекомендуется перейти на использование технологии WebAssembly, предоставляющей не зависящий от браузера универсальный низкоуровневый промежуточный код для выполнения в браузере приложений, скомпилированных из различных языков программирования. WebAssembly рассматривается как более перспективная и переносимая между браузерами технология создания высокопроизводительных web-приложений, в то время как PNaCl не вышел за пределы нишевого продукта, привязанного к одному браузеру. Для упрощения перевода приложений (далее…)


Просмотры: 185
1 Звезда2 Звезды3 Звезды4 Звезды5 Звёзд
Loading...

Выпуск nginx 1.13.1

Автор   31.05.2017

Доступен новый выпуск основной ветки высокопроизводительного HTTP-сервера nginx 1.13.1, в котором реализованы следующие изменения:

  • В директиву set_real_ip_from в качестве параметра добавлена возможность указывать имя хоста;
  • Улучшены скрипты подсветки синтаксиса для vim;
  • Для системы DragonFly BSD добавлена поддержка директивы worker_cpu_affinity;
  • Исправлена ошибка, из-за (далее…)

Просмотры: 133
1 Звезда2 Звезды3 Звезды4 Звезды5 Звёзд
Loading...

Релиз языка программирования Perl 5.26.0

Автор   31.05.2017

После года разработки состоялся релиз новой стабильной ветки языка программирования Perl — 5.26. При подготовке нового выпуска было изменено около 360 тыс. строк кода, изменения затронули 2600 файлов, в разработке приняли участие 86 разработчиков.

Ветка 5.26 выпущена в соответствии с утверждённым пять лет назад фиксированным графиком разработки, подразумевающим выпуск новых стабильных веток раз в год и корректирующих релизов — раз в три месяца. Примерно через месяц планируется выпустить первый корректирующий релиз Perl 5.26.1, в котором будут исправлены наиболее значительные ошибки, выявленные в процессе внедрения Perl 5.24.0. Одновременно с выходом Perl 5.26 прекращена поддержка ветки 5.22, для которой в будущем могут быть выпущены обновления только в случае выявления критических проблем с безопасностью. Также начался процесс разработки экспериментальной ветки 5.27, на базе которой в апреле или мае 2018 года будет сформирован стабильный релиз Perl 5.28.

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

  • Из соображении безопасности текущая директория «.» по умолчанию больше не дополняется в виде последнего элемента в @INC. Такое поведение в отношении @INC теперь аналогично тому как если бы ранее был активирован режим «Taint» (ключ запуска «-T»). Данная схема может создать проблемы при сборке, тестировании, установке модулей и исполнении скриптов. Существует несколько простых способов вернуть прежнее поведение perl:
    • Схема отключения реализована через включение по умолчанию опции «-Udefault_inc_excludes_dot» для Configure. Поэтому если можно аннулировать значение «-Udefault_inc_excludes_dot» для Configure и пересобрать perl;
    • Perl проверяет переменную окружения PERL_USE_UNSAFE_INC в момент запуска и если переменная определена, то в @INC будет добавлен «.» как прежде (как пример: alias perl=»env PERL_USE_UNSAFE_INC=1 perl»);
    • Если допустимо добавление «.» первым элементом в @INC, то можно использовать схему perl -I. (например alias perl=»perl -I.» в рабочей сессии окружения)
  • Оператор «do» теперь выдает предупреждения на попытку загрузки файла который не нашелся в @INC без «.», но обнаружился в текущей директории. Файл может быть загружен путем явного указания пути: ‘do «./file.pl»‘. Выполнение с «-I.» и использование PERL_USE_UNSAFE_INC не приводит к предупреждениям при использовании do.
  • В регулярных выражениях открывающая фигурная скобка «{» должна быть экранирована или заключена в определитель класса «[{]». Данное нововведение дает возможность для реализации новых конструкции в регулярных выражениях в будущем. В perldiag в секции «Unescaped left brace in regex is deprecated here» можно найти детали, например, о случаях когда «{» может не экранироваться.

Ключевые изменения:

  • С процедур лексической области видимости введенных в 5.18 снят статус экспериментальной возможности. Попытка определить лексическую процедуру больше не приведет к ошибкам и предупреждению. Изменения введены таким образом, что сохранена обратная совместимость с ранее использованными схемами через использование «experimental::lexical_subs» и «lexical_subs» из «feature». Включение «lexical_subs» через «feature» не прервет выполнение программы, так как сохранилось в виде бездействующей заглушки и лексические процедуры теперь доступны всегда в областях видимости без их явного включения;
  • Введена поддержка выравнивания встроенных документов (here-documents). Новый модификатор «~», добавленный в синтаксис объявления here-документов, дает понять синтаксическому анализатору, что в коде встроенный документ будет выровнен на величину пробельного символа (символы из группы whitespace). Это позволяет определить в программе следующую конструкцию которая выглядит без нарушения вложенности:
         if (1) {       print {{~EOF;         Hello there         EOF     }  

    Обратите внимание на то, что лексический анализатор в процессе поиска лексем будет, во-первых, проверять выравнивание строк, и, во-вторых, удалять с начала строки here-документа такую же подстроку которая предшествует закрывающему элементу here-документа. То есть если в нашем примере перед EOF стоит «\t», то перед ‘Hello there’ будет попытка удалить «\t». Анализатор сообщит об ошибке выравнивания here-документов если перед «Hello there» (далее…)


Просмотры: 165
1 Звезда2 Звезды3 Звезды4 Звезды5 Звёзд
Loading...

Для ядра Linux предложена реализация белого списка исполняемых приложений

Автор   31.05.2017

В списке рассылки ядра Linux опубликован набор патчей с реализаций LSM-модуля WhiteEgret, представляющего средства для обеспечения защиты системы через применение белого списка исполняемых компонентов. WhiteEgret допускает исполнение только кода приложений и библиотек, которые явно разрешены и занесены в заранее определённый белый список. Исполнение всех не включённых в список приложений блокируется, что не позволяет выполнить в системе недозволенные программы и вредоносное ПО. WhiteEgret хорошо подходит для статичных окружений, состав которых не меняется длительное время, например, для типовых серверов и промышленных управляющих систем.

Обработка белого списка дозволенных программ выполняется (далее…)


Просмотры: 136
1 Звезда2 Звезды3 Звезды4 Звезды5 Звёзд
Loading...

Представлен gps-share, инструмент для организации совместного доступа к GPS

Автор   30.05.2017

Разработчики проекта GNOME опубликовали первый выпуск утилиты gps-share, предназначенной для организации доступа к устройству GPS из других систем по локальной сети. Код проекта написан на языке Rust и поставляется под лицензией GPLv2. В процессе работы gps-share задействованы библиотеке libdbus, libudev, libcap и xz-libs.

При помощи gps-share можно организовать совместное использование GPS между несколькими устройствами, не имеющими собственных чипов для работы с GPS. Gps-share также нацелен на обеспечение поддержки обособленных GPS-устройств в сервисе определения местоположения Geoclue, наряду (далее…)


Просмотры: 235
1 Звезда2 Звезды3 Звезды4 Звезды5 Звёзд
Loading...

Выпуск свободного издательского пакета Scribus 1.5.3

Автор   30.05.2017

Доступен выпуск свободного пакета для верстки документов Scribus 1.5.3. Scribus предоставляет средства для профессиональной верстки печатных материалов, включая гибкие инструменты для генерации PDF и поддержку работы с раздельными цветовыми профилями, CMYK, плашечными цветами и ICC. Система написана с использованием тулкита Qt и поставляется под лицензией GPLv2+. Готовые бинарные сборки подготовлены для Linux, macOS и Windows.

Ветка 1.5 позиционируется как экспериментальная (далее…)


Просмотры: 168
1 Звезда2 Звезды3 Звезды4 Звезды5 Звёзд
Loading...

Выпуск медиасервера Gerbera 1.0

Автор   30.05.2017

Представлен первый релиз медиасервера Gerbera, продолжившего развитие проекта MediaTomb после прекращения его разработки. Gerbera поддерживает протоколы UPnP, в том числе спецификацию UPnP MediaServer 1.0, и позволяет организовать трансляцию мультимедийного контента в локальной сети с возможностью просмотра видео и прослушивания звука на любом UPnP-совместимом устройстве, включая телевизоры, игровые приставки, смартфоны и планшеты. (далее…)


Просмотры: 150
1 Звезда2 Звезды3 Звезды4 Звезды5 Звёзд
Loading...