Почему многих коробит с этой фразы?
Ведь если написать доброе утро, добрый день и т.д., а у собеседника или группы собеседников в момент прочтения не то время суток, то подобные фразы, будут неуместны.
Дискасс.
LXQt — пользовательская среда, развиваемая совместно разработчиками LXDE и Razor-qt, которая призвана сочетать всё лучшее из этих двух проектов и позиционируется как легковесное, модульное и удобное для работы окружение с современным оформлением.
Команда разработчиков Rust рада представить релиз Rust 1.11.
Rust — это системный язык программирования, при разработке которого внимание сосредоточено на безопасности, скорости и параллелизме.
В фронтенде компилятора задействован новый более компактный формат экспортируемых данных,
что с более эффективной обработкой деклараций импортов
позволило значительно ускорить время компиляции и уменьшить размер исполняемых файлов на 20–30%.
Программы должны выполняться немного быстрее благодаря улучшениям в сборщике мусора и оптимизациям в стандартной библиотеке.
With netplan there are central /etc/netplan/*.yaml network config files for *all* Ubuntu — Snappy, Server, Client, MaaS, cloud-init. All installers only generate such a file, no /etc/network/interfaces any more. This then gives us the flexibility to dynamically select or switch between different backends — for example, there is demand for moving away from ifupdown towards networkd, and some environments might prefer NetworkManager for everything. netplan translates the YAML config to the backend specific configuration formats on boot, but all these are only written to /run — i. e. they are ephemeral and not considered primary configuration files in /etc.
Успешно обновился с 15.10 до 16.04. Полёт нормальный.
Как обычно PNG лежит здесь.
Не так давно сменил шелл на xonsh. Это такой гибрид python и bash. Есть некоторые недоработки, но жить они не мешают. К тому же его очень активно пилят. В случае чего, всегда можно задать вопрос в issues на гитхабе, и тебе быстро и с радостью ответят.
Продолжаю изучать Rust. В виду отсутствия некоторых знаний и достаточного количества времени, прогресс нет такой сильный, как хотелось бы. А как известно, лучший способ изучить что-то — это практика, то решил сделать небольшой тулкит на основе termbox. Хоть всё ещё в зачаточном состоянии, но уже есть некоторые результаты.
Доступна новая версия свободной неинтерактивной консольной программы для загрузки файлов по сети — GNU Wget 1.18.
Эта версия содержит исправление уязвимости (CVE-2016-4971), содержащейся во всех предыдущих версиях wget.
При редиректе с HTTP-ресурса на FTP, wget использовала URL, полученный от HTTP-сервера, для имени загружаемого файла.
Теперь, так же, как и при редиректе с HTTP на HTTP, имя берётся из оригинального URL.
Для того, чтобы получить старое поведение, используйте опцию --trust-server-names.
Другие изменения:
Запрещено использование доступных всем на запись HSTS-файлов.
Реализован парсинг атрибутов <img srcset> при рекурсивной загрузке.
Решена проблема со SNI-именами, имеющими завершающие точки.
Добавлены опции --bind-dns-address и --dns-servers.
При сборке с libiconv доступно автоматическое перекодирование имён файлов — для не-ASCII символов в URI используется кодировка текущей системной локали. Кодировку имён внешних файлов можно указать через опцию --remote-encoding (значение по умолчанию — UTF-8).
На гитхабе добавили возможность включить данные по приватным репозиториям в график активности и вместе с этим убрали кол-во дней (longest streak, current streak). Хипстеры негодуют.
Синтаксис, похожий на Ruby (но совместимость с ним не является целью).
Статическая типизация (но без необходимости явного указания типов переменных и аргументов методов).
Вызов кода на Си с помощью биндингов, написанных на Crystal.
Исполнение и генерация кода во время компиляции (макросы).
Трансляция в эффективный нативный код.
Текущее состояние:
Проект находится в стадии alpha: язык и стандартная библиотека всё ещё подвергаются значительным изменениям.
Компилятор написан на Crystal.
Этот релиз содержит значительное изменение, ломающее обратную совместимость, о котором было объявлено несколько месяцев назад.
Также был внесён ряд других незначительных изменений и множество новых вкусностей.
Вышла очередная версия Mercurial — распределённой системы управления версиями, написанной на Python.
В числе основных изменений находится ряд усовершенствований, направленных на улучшение производительности.
fsmonitor
Добавлено расширение fsmonitor (ранее известное как «hgwatchman»), разработанное компанией Facebook.
Такие операции, как hg status, hg diff, hg commit
должны знать о том, какие файлы в репозитории были изменены.
В нормальной ситуации это требует обращения к каждому файлу для проверки изменений.
fsmonitor использует сервис watchman, чтобы получать уведомления об изменениях.
watchman в свою очередь, использует специфичные для платформы API, такие как inotify или FSevents,
чтобы получать уведомления от операционной системы всякий раз, когда файл в хранилище изменился.
Используя fsmonitor, команды hg status, hg diff и другие,
должны проверять только те файлы, которые на самом деле изменились, вместо того, чтобы обходить всё хранилище.
automv
Другим важным изменением является введение экспериментального расширения automv.
Обычно, люди перемещают файлы в своих репозиториях используя команды hg mv или hg cp.
Несмотря на это, вполне легко забыть об этих командах и использовать обычное перемещение, особенно при использовании IDE.
Расширение automv пытается определить похожие файлы при коммите и отмечает их как перемещённые/скопированные.
chg
Новый интегрированный chg клиент предоставляет альтернативный способ запуска Mercurial команд.
Причиной низкой производительности Mercurial с точки зрения скорости команд является то, что он написан на Python.
Это обычно не ограничивающий фактор, но запуск интерпретатора добавляет некоторые накладные расходы.
Chg решает эту проблему, используя клиент, реализованный на C, и сервер на Python.
Вместо того, чтобы запускать интерпретатор Python для каждой команды, вызов chg запускает простое C-приложение, которое общается с сервером команд.
2 апреля 2016 года стало известно о уязвимости, которая позволяет неавторизованным пользователям
заменить существующие .gem файлы при определённых обстоятельствах. Исправление было опубликовано в этот же день.
При дальнейшем рассмотрении был обнаружен похожий вектор атаки, исправление для которого было опубликовано уже 4 апреля.
В обоих векторах атаки, атакующий мог использовать специальную комбинацию имени и версии гема, чтобы заменить существуюший .gem файл.
Также известно, что .gem файлы загруженные с помощью этого метода не могут быть установлены через стандартную команду gem install.
Первая часть этой уязвимости была введена 11 июня 2014, а вторая присутствовала с самого начала.
Все .gem файлы, у которых есть контрольная сумма sha256, были проверены и ни один из них не пострадал.
Подсчёт контрольной суммы был введён 8 февраля 2015 года, таким образом файлы, загруженные до этой даты, не имеют контрольной суммы.
Так или иначе, если .gem файл был скомпрометирован ранее, нет способа выяснить это.
Файлы с дефисом в имени (например ‘blank-blank’) загруженные между 11 июня 2014 и 2 апреля 2016 были уязвимы.
Файлы загруженные между 8 февраля 2015 и 2 апреля 2016 были уже проверены.
Если у вас есть версия .gem файла, которая не была проверена, вы должны выполнить следующие действия:
Скачать ваш gem.
Запустить gem unpack file.gem.
Убедиться, что нет никаких неожиданных изменений.
Запустить gem spec file.gem.
Убедиться, что нет никаких неожиданных изменений в gemspec.
В случае, если gem был скомпрометирован, пожалуйста выполните gem yank для вашего файла,
и сообщите об этом команде по обеспечению безопасности как можно скорее, и пожалуйста отправьте ваш .gem файл.
Особая благодарность Eric Chapweske за выявление уязвимости и подробный отчёт.
David Radcliffe и Arthur Neves за работу на исправлениями и проверками.
Aaron Patterson, Nick Quaranto, André Arko, и Samuel Giddins за ревью и проверку.
Composer — это менеджер зависимостей, пришедший на замену PEAR, который произвел революцию в мире PHP.
Изначально он был разработан двумя программистами: Nils Adermann
и Jordi Boggiano.
При его создании авторы вхдохновлялись аналогичными проектами: npm для Node.js и Bundler для Ruby.
Composer распространяется под лицензией MIT и доступен на GitHub.
Днём рождения проекта считается 3 апреля 2011 года.
С того момента прошло очень много времени, но только в последние месяцы разработчики
решили несколько оставшихся критических проблем, что в конце концов позволило выпустить первый стабильный релиз.
Главным изменением является то, что по умолчанию установщик Composer
и команда composer self-update теперь устанавливают стабильные релизы по умолчанию.
Это позволит избежать неприятных сюрпризов, если вы запускаете self-update во время деплоя,
но это также означает, что цикл обратной связи для разработчиков станет более длинным.
Так или иначе разработчики очень надеются, что будет достаточно людей, использующих ранние версии и особенно снапшоты.
При деплое рекомендуется запускать регулярные обновления,
composer self-update --preview при запуске тестов
и composer self-update --snapshot при разработке.
Это будет гарантировать то, что разработчики заметили регрессии или ошибки как можно раньше,
и таким образом позволит избежать поломок в стабильных релизах.