OpenNET: Новини

Оновлення MediaPipe, фреймворка для обробки відео і звуку з використанням машинного навчання (6 +1) Компанія Google представила оновлення фреймворка MediaPipe , Що пропонує набір готових функцій для застосування методів машинного навчання при обробці відео і звуку в режимі реального часу. Наприклад, MediaPipe можна використовувати для розпізнавання осіб, відстеження руху пальців і рук, заміни зачіски, виявлення наявності об'єктів і відстеження їх переміщення в кадрі. код проекту поширюється під ліцензією Apache 2.0. Моделі обробляються з використанням платформ машинного навчання TensorFlow і TFLite.
  1. Головна посилання до новини
  2. OpenNews: Google випустив дистрибутив Mendel Linux 4.0 для плат Coral
  3. OpenNews: GitHub відкрив напрацювання щодо застосування машинного навчання для пошуку та аналізу коду
  4. OpenNews: Випуск системи машинного навчання TensorFlow 2.0
  5. OpenNews: Відкрито код Spleeter, системи для поділу музики і голосу
  6. OpenNews: Компанія Mozilla представила движок розпізнавання мови DeepSpeech 0.6

NVIDIA відкрила фреймворк для прискорення кодування і декодування відео (10 +5) Компанія NVIDIA опублікувала вихідні тексти фреймворка VPF (Video Processing Framework), що пропонує бібліотеку на С ++ і Біндінг для мови Python з функціями для задіяння засобів GPU для апаратного прискорення декодування, кодування і перекодування відео, а також супутніх операцій, таких як перетворення піксельних форматів і колірних просторів . код відкритий під ліцензією Apache 2.0.
  1. Головна посилання до новини
  2. OpenNews: Google випустив дистрибутив Mendel Linux 4.0 для плат Coral
  3. OpenNews: NVIDIA опублікувала документацію по інтерфейсів GPU для спрощення розробки відкритих драйверів
  4. OpenNews: Компанія NVIDIA випустила бібліотеку libvdpau 1.3
  5. OpenNews: Реліз програми для перекодування відео HandBrake 1.3.0
  6. OpenNews: Випуск децентралізованої відеовещательной платформи PeerTube 2.0

Western Digital опублікував спеціалізовану ФС Zonefs для зонованих накопичувачів (62 +1) Директор з програмних розробок компанії Western Digital запропонував в списку розсилки розробників ядра Linux нову файлову систему Zonefs, націлену на спрощення низкоуровневой роботи з зонувати пристроями зберігання . Zonefs пов'язує кожну зону в накопичувачі з окремим файлом, який можна використовувати для зберігання даних в raw-режимі без маніпуляції на рівні секторів і блоків.

Zonefs не є POSIX-сумісної ФС і обмежена досить вузькою сферою застосування, що дозволяє додаткам використовувати файловий API замість прямого звернення до блокового пристрою за допомогою ioctl. Пов'язані з зонами файли вимагають виконання операцій послідовного запису, починаючи з кінця файлу (запис в режимі доповнення).

Надані в Zonefs файли можуть застосовуватися для розміщення поверх зонованих накопичувачів БД, що використовують структури зберігання в формі балки LSM (log-structured merge), відштовхуючись від концепції один файл - одна зона зберігання. Наприклад, подібні структури застосовуються в БД RocksDB і LevelDB. Запропонований підхід дає можливість скоротити витрати на портування коду, спочатку розрахованого на маніпуляцію з файлами, а не блоковими пристроями, а також організувати низкоуровневую роботу з зонувати накопичувачами з додатків на мовах програмування відмінних від Сі.

Під зонувати накопичувачами маються на увазі пристрою на жорстких магнітних дисках або NVMe SSD , Простір для зберігання в яких розбито на зони, що становлять групи блоків або секторів, в які допускається лише послідовне додавання даних з оновленням цілком всієї групи блоків.

Наприклад, зонування записи застосовується в пристроях c черепичним магнітної записом ( Shingled Magnetic Recording , SMR), в яких ширина доріжки менше ширини магнітної головки, і запис проводиться з частковим перекриттям сусідньої доріжки, тобто будь-яка перезапис призводить до необхідності перезапису всієї групи доріжок. Що стосується SSD-накопичувачів, то в них спочатку є прив'язка до послідовним операціями записи з попереднім очищенням даних, але дані операції ховаються на рівні контролера і прошарку FTL (Flash Translation Layer). Для підвищення ефективності при деяких видах навантаження організація NVMe стандартизувала інтерфейс ZNS (Zoned Namespaces), що дозволяє безпосередньо звертатися до зон в обхід прошарку FTL.

У Linux для зонованих жорстких дисків починаючи з ядра 4.10 пропонуються блокові пристрої ZBC (SCSI) і ZAC (ATA), а починаючи з випуску 4.13 доданий модуль dm-zoned, що представляє зонований накопичувач як звичайне блоковий пристрій, приховуючи застосовуються в процесі роботи обмеження записи. На рівні файлових систем підтримка зонування вже інтегрована в ФС F2FS, а в розробці знаходиться набір патчів для ФС Btrfs, адаптацію якої для зонованих накопичувачів спрощує робота в режимі CoW (copy-on-write). Роботу Ext4 і XFS поверх зонованих накопичувачів можна організувати за допомогою dm-zoned. Для спрощення перекладу файлових систем запропонований інтерфейс ZBD, що транслює операції випадкового запису в файли в потоки послідовних операцій записи.

  1. Головна посилання до новини
  2. OpenNews: Samsung відкрив код F2FS, нової файлової системи для Flash-накопичувачів
  3. OpenNews: WD відкрив напрацювання, пов'язані з процесором WD SweRV, і портував Plasma Mobile для RISC-V
  4. OpenNews: До складу ядра Linux прийнятий dm-clone, модуль для ефективної реплікації зовнішніх пристроїв
  5. OpenNews: Google працює над використанням звичайного ядра Linux в Android
  6. OpenNews: VPN WireGuard прийнятий в гілку net-next і намічений для включення в ядро ​​Linux 5.6

Випуск мови програмування Ruby 2.7.0 (51 +10) Після року розробки опубліковано реліз Ruby 2.7.0 , Динамічного об'єктно-орієнтованої мови програмування, що відрізняється високою ефективністю розробки програм і увібрав в себе кращі риси Perl, Java, Python, Smalltalk, Eiffel, Ada і Lisp. Код проекту поширюється під ліцензіями BSD ( "2-clause BSDL") і "Ruby", яка посилається на останній варіант ліцензії GPL і повністю сумісна з GPLv3. Ruby 2.7 є сьомим значним випуском, підготовленим в рамках планового процесу розробки, який передбачає відведення року на підготовку функціональних поліпшень і формування кожні 2-3 місяці коригувальних випусків.

Основні поліпшення :

  • експериментальна підтримка зіставлень зі зразком ( Pattern matching ), Що дозволяють перебрати заданий об'єкт і призначити значення, якщо є збіг із зразком. case [0, [1, 2, 3]] in [a, [b, * c]] pa # => 0 pb # => 1 pc # => [2, 3] end case {a: 0, b : 1} in {a: 0, x: 1}: unreachable in {a: 0, b: var} p var # => 1 end
  • В оболонці інтерактивних обчислень irb (REPL, Read-Eval-Print-Loop) з'явилася можливість многострочного редагування, реалізована за допомогою readline-сумісної бібліотеки reline , Написаної на мові Ruby. Інтегрована підтримка rdoc, що дозволяє переглядати в irb довідкову інформацію по заданим класам, модулів і методам. Забезпечено кольорове підсвічування рядків з кодом, які відображаються через Binding # irb і результатів інспектування об'єктів базових класів.
  • Доданий ущільнюючий збирач сміття (Compaction GC), який може виконувати дефрагментацію області пам'яті, вирішуючи проблеми зниження продуктивності і підвищення споживання пам'яті через фрагментації пам'яті, що виникає в процесі роботи деяких багатопоточних Ruby-додатків. Для упаковки об'єктів в купі запропонований метод GC.compact, що дозволяє знизити число використовуваних сторінок пам'яті і оптимізувати купу для операцій CoW (copy-on-write).
  • проведена підготовка до поділу аргументів, які визначаються на основі позиції в списку ( "def foo (a, b, c)") і ключових слів ( "def foo (key: val)"). Автоматичне перетворення аргументів на основі ключових слів і позиції оголошено застарілим і не буде підтримуватися в гілці Ruby 3.0. Зокрема, оголошено застарілим використання останнього аргументу як параметрів ключового слова, передача аргументів на основі ключових слів як останнього параметра хешу і поділ останнього аргументу на позиційні і ключові параметри. def foo (key: 42); end; foo ({key: 42}) # warned def foo (** kw); end; foo ({key: 42}) # warned def foo (key: 42); end; foo (** {key: 42}) # OK def foo (** kw); end; foo (** {key: 42}) # OK def foo (h, ** kw); end; foo (key: 42) # warned def foo (h, key: 42); end; foo (key: 42) # warned def foo (h, ** kw); end; foo ({key: 42}) # OK def foo (h, key: 42); end; foo ({key: 42}) # OK def foo (h = {}, key: 42); end; foo ( "key" => 43, key: 42) # warned def foo (h = {}, key: 42); end; foo ({ "key" => 43, key: 42}) # warned def foo (h = {}, key: 42); end; foo ({ "key" => 43}, key: 42) # OK def foo (opt = {}); end; foo (key: 42) # OK def foo (h, ** nil); end; foo (key: 1) # ArgumentError def foo (h, ** nil); end; foo (** {key: 1}) # ArgumentError def foo (h, ** nil); end; foo ( "str" ​​=> 1) # ArgumentError def foo (h, ** nil); end; foo ({key: 1}) # OK def foo (h, ** nil); end; foo ({ "str" ​​=> 1}) # OK h = {}; def foo (* a) a end; foo (** h) # [] h = {}; def foo (a) a end; foo (** h) # {} and warning h = {}; def foo (* a) a end; foo (h) # [{}] h = {}; def foo (a) a end; foo (h) # {}
  • можливість використання нумерованих імен змінних за замовчуванням для параметрів блоку. [1, 2, 3] .each {puts @ 1} # як аналог [1, 2, 3] .each {| i | puts i}
  • Експериментальна підтримка діапазонів без початкового значення. ary [.. 3] # аналогічно ary [0..3] rel.where (sales: ..100)
  • Доданий метод Enumerable # tally, що підраховує скільки разів зустрічається кожен елемент. [ "A", "b", "c", "b"]. Tally # => { "a" => 1, "b" => 2, "c" => 1}
  • Дозволено виклик приватного методу з літералом "self" def foo end private: foo self.foo
  • Доданий метод Enumerator :: Lazy # eager для генерації звичайного перерахування з "ледачого" (Enumerator :: Lazy) перерахування. a =% w (foo bar baz) e = a.lazy.map {| x | x.upcase} .map {| x | x + "!" } .Eager p e.class # => Enumerator p e.map {| x | x + "?" } # => [ "FOO !?", "BAR !?", "BAZ !?"]
  • Продовжено розвиток експериментального JIT-компілятора, який дозволяє відчутно підняти продуктивність додатків на мові Ruby. Запропонований в Ruby JIT-компілятор спочатку записує на диск код на мові Сі, після чого викликає зовнішній Сі-компілятор для генерації машинних інструкцій (підтримується виклик GCC, Clang і Microsoft VC ++). У новій версії реалізований метод для inline-розгортання при необхідності, забезпечено вибіркове застосування режимів оптимізації при компіляції, значення за замовчуванням "--jit-min-calls" збільшено з 5 до 10000, а "--jit-max-cache" зменшено з 1000 до 100.
  • Підвищено продуктивність CGI.escapeHTML, Monitor і MonitorMixin.
  • У Module # name, true.to_s, false.to_s і nil.to_s забезпечений повернення рядка, незмінною для зазначеного об'єкта.
  • Скорочений розмір бінарних файлів, що генеруються методом RubyVM :: InstructionSequence # to_binary;
  • Оновлені версії вбудованих компонентів, включаючи Bundler 2.1.2, RubyGems 3.1.2, Racc 1.4.15, CSV 3.1.2, REXML 3.2.3, RSS 0.2.8, StringScanner 1.0.3;
  • З базової поставки в зовнішні gem-пакети винесені бібліотеки CMath (cmath gem), Scanf (scanf gem), Shell (shell gem), Synchronizer (sync gem), ThreadsWait (thwait gem), E2MM (e2mmap gem).
  • На rubygems.org опубліковані поставляються за замовчуванням модулі stdlib: benchmark, cgi, delegate, getoptlong, net-pop, net-smtp, open3, pstore, singleton. Чи не перенесені в rubygems.org модулі monitor observer, timeout, tracer, uri, yaml, які поставляються тільки в ruby-core.
  • Для складання Ruby тепер потрібно Сі-компілятор, що підтримує стандарт C99.
  1. Головна посилання до новини
  2. OpenNews: Оновлення Ruby 2.6.5, 2.5.7 та 2.4.8 з усуненням вразливостей
  3. OpenNews: Зафіксована підстановка шкідливого коду в Ruby-пакет Strong_password
  4. OpenNews: В rest-client і ще 10 Ruby-пакетах виявлено шкідливий код
  5. OpenNews: Відкрито код Sorbet, системи статичної перевірки типів для Ruby
  6. OpenNews: Випуск мови програмування Ruby 2.6.0

Випуск складальної системи Bazel 2.0 (16 +2) доступний випуск відкритого складального інструментарію Bazel 2.0 , Що розвивається інженерами з Google і використовуваного для збірки більшості внутрішніх проектів даної компанії. Bazel забезпечує складання проекту, запускаючи необхідні компілятори і тести. Підтримується сборка и тестування коду на Java, C ++, Objective-C, Python, Rust, Go і багатьох інших мовах, а також збірка мобільних додатків для Android і iOS. код проекту поширюється під ліцензією Apache 2.0.

Значна зміна версії пов'язано з додаванням змін, що порушують зворотну сумісність. Починаючи з Bazel 2.0 включені за замовчуванням режими "--incompatible_remap_main_repo" (посилання на ім'я і через @ тепер посилаються на один репозиторій), "--incompatible_disallow_dict_lookup" _ (застосування нехешіруемих ключів), "--incompatible_remove_native_maven_jar" і "--incompatible_prohibit_aapt1" . Серед інших змін:

  • В команді aquery з'явилася експериментальна підтримка нової редакції формату виведення "proto" (--output = proto), яка поки відключена за замовчуванням (--incompatible_proto_output_v2) і забезпечує більш компактне представлення даних;
  • Доданий прапор "--incompatible_remove_enabled_toolchain_types", що дозволяє видалити поле PlatformConfiguration.enabled_toolchain_types;
  • Додана захист від завантаження пакетів, при завантаженні яких при розкритті шляхів використовуються циклічні символічні посилання;
  • Реалізована можливість використання прапора "--disk_cache" з зовнішніми кешами gRPC;
  • У пакет для Debian і бінарний інсталятор включена поліпшена прошарок, обробна файли ~ / .bazelversion і змінну оточення $ USE_BAZEL_VERSION;
  • В рамках підготовки до переведення файлів з маніфестом runfiles в категорію застарілих можливостей доданий прапор "--experimental_skip_runfiles_manifests".

Серед відмінних рис Bazel виділяються висока швидкість, надійність і повторюваність процесу складання. Для досягнення високої швидкості збірки в Bazel активно застосовуються техніки кешування і розпаралелювання процесу складання. У BUILD-файлах обов'язково повністю визначені всі залежності, на основі яких приймаються рішення по перезібравши компонентів після внесення змін (збирати заново тільки змінені файли) і розпаралелювання процесу складання. Інструментарій також гарантує повторюваність збірки, тобто результат складання проекту на машині розробника буде повністю збігатися із збіркою на сторонніх системах, таких як сервери безперервної інтеграції.

На відміну від Make і Ninja в Bazel застосовується більш високорівнева підхід до побудови правил складання, при якому замість визначення прив'язки команд до зібраних файлів проводиться застосування більш абстрактних готових блоків, таких як "складання виконуваного файлу на мові С ++", "збірка бібліотеки на C ++ "або" запуск тесту для C ++ ", а також визначення цільових і складальних платформ. У текстовому файлі BUILD компоненти проекту описуються як зв'язка бібліотек, виконуваних файлів і тестів, без деталізації на рівні окремих файлів і команд виклику компілятора. Додаткова функціональність реалізується через механізм підключення розширень.

Підтримується використання єдиних складальних файлів для різних платформ і архітектур, наприклад, один файл збірки без змін може застосовуватися як для серверної системи, так і для мобільного пристрою. Складальна система спочатку спроектована для оптимальної збірки проектів Google, в тому числі збірки дуже великих проектів і проектів, що містять код на кількох мовах програмування, що вимагають розширеного тестування і збираються для декількох платформ.

  1. Головна посилання до новини
  2. OpenNews: Випуск складальної системи Bazel 1.0
  3. OpenNews: Випуск складальної системи Meson 0.52
  4. OpenNews: Розробники з компанії Google відкрили код системи збирання Ninja
  5. OpenNews: Перший публічний випуск складального інструментарію build2
  6. OpenNews: Випуск складального інструментарію Qbs 1.15 і середовища розробки Qt Design Studio 1.4

Реліз PyPy 7.3, реалізації Python, написаної на мові Python (32 +5) сформовано реліз проекту PyPy 7.3 , В рамках якого розвивається реалізації мови Python, написаної на мові Python (використовується статично типізоване підмножина RPython , Restricted Python). Випуск підготовлений одночасно для гілок PyPy2.7 і PyPy3.6, що забезпечують підтримку синтаксису Python 2.7 і Python 3.6. Випуск доступний для Linux (x86, x86_64, PPC64, s390x, Aarch64, ARMv6 або ARMv7 з VFPv3), macOS (x86_64), OpenBSD, FreeBSD і Windows (x86).

Особливістю PyPy є використання JIT-компілятора, на льоту транслює деякі елементи в машинний код, що дозволяє забезпечити високий рівень продуктивності - при виконанні деяких операцій PyPy в кілька разів перевершують класичну реалізацію Python на мові Сі (CPython). Ціною високої продуктивності і використання JIT-компіляції є більш високе споживання пам'яті - загальне споживання пам'яті в складних і довготривалих процесах (наприклад, при трансляції PyPy силами самого PyPy) перевищує споживання CPython в півтора-два рази.

З змін в новому випуску відзначається оновлення модулів CFFI 1.13.1 (C Foreign Function Interface) і cppyy 1.10.6 з реалізацією інтерфейсу для виконання функцій, написаних на мовах Сі та C ++ (CFFI рекомендований для взаємодії з кодом на Сі, а cppyy для коду на C ++). До складу включена нова версія пакету pyrepl з інтерактивною оболонкою REPL . Проведена оптимізація продуктивності коду, що відповідає за обробку рядків і маніпуляції з Unicode. Для платформи Windows додана підтримка кодування і декодування різних текстових кодувань. Реалізована підтримка OpenSSL 1.1 і TLS 1.3.

  1. Головна ПОСИЛАННЯ до новини
  2. OpenNews: Випуск мови програмування Python 3.8
  3. OpenNews: Python переходити на новий цикл формирование значний випусків
  4. OpenNews: Реліз 19.3.0 віртуальної машини GraalVM и реалізацій Python, JavaScript, Ruby и R на ее основе
  5. OpenNews: Реліз PyPy 7.2, реализации Python, напісаної на мові Python
  6. OpenNews: Проект RustPython розвіває реалізацію інтерпретатора Python на мові Rust

Вийшов Delta Chat 1.0 для Android з новим ядром, перепісані на Rust (145 +29) уявлень випуск месенджера Delta Chat 1.0 для платформи Android (последнего версією для десктопа є 0.901 , А для iOS - 0.960 ). Проект Delta Chat прімітній Використання в якості транспорту звічайної Електронної пошта c трансляцією міттєвіх Повідомлень в email (chat-over-email, спеціалізований поштовий клієнт, что працює як месенджер). код Додатків пошірюється під ліцензією GPLv3, а базова бібліотека доступна під ліцензією MPL 2.0 (Mozilla Public License). реліз Доступний в Google Play.

Delta Chat НЕ вікорістовує Власні сервери и может працювати практично через будь-який поштовий сервер, что підтрімує SMTP и IMAP (для Швидкого визначення надходження Нових Повідомлень застосовується техніка Push-IMAP ). Підтрімується шифрування з Використання OpenPGP и стандарту Autocrypt для простої автоматичної настройки та обміну ключами без использование серверів ключів (ключ автоматично передається в Першому відправленому Повідомленні). Реалізація кінцевого шифрування грунтується на коді rPGP , Який в цьому році пройшов незалежний аудит безпеки. Трафік шифрується з використанням TLS в реалізації штатних системних бібліотек.

Delta Chat повністю контролюється користувачем і не прив'язаний до централізованих сервісів. Для роботи не потрібна реєстрація в нових сервісах - в якості ідентифікатора можна використовувати існуючий email. Якщо кореспондент не використовує Delta Chat він може прочитати повідомлення як звичайний лист. Боротьба зі спамом здійснюється за допомогою відсіювання повідомлень від невідомих користувачів (за замовчуванням відображаються тільки повідомлень від користувачів з адресної книги і тих, кому раніше відправлялися повідомлення, а також відповіді на власні повідомлення). Можливо відображення вкладень і прикріплених зображень і відео.

Підтримується створення групових чатів, в яких можуть спілкуватися кілька учасників. При цьому є можливість прив'язки до групи перевіряється списку учасників, що не дозволяє прочитати повідомлення стороннім особам (перевірка учасників здійснюється з криптографічного підпису, а повідомлення шифруються з використанням кінцевого шифрування). Підключення до верифікованим групам здійснюється через відправку запрошення з QR-кодом. Верифіковані чати поки мають статус експериментальної можливості, але їх підтримку планується стабілізувати на початку 2020 роки після завершення аудиту безпеки реалізації.

Ядро месенджера розробляється окремо в формі бібліотеки і може бути використано для написання нових клієнтів і спамерських пошукових роботів. Актуальний варіант базової бібліотеки написаний на мові Rust (старий варіант був написаний на мові Сі). Є Біндінг для Python, Node.js і Java. В розробці неофіційні Біндінг для Go.

У порівнянні з попередньою версією 0.510.1 базова бібліотека переписана з Сі на Rust без використання небезпечного коду. Додана підтримка аватарів і можливість використання Delta Chat в якості поштового клієнта для читання звичайних листів, відправлених не за допомогою Delta Chat.

  1. Головна посилання до новини
  2. OpenNews: Доступна платформа обміну повідомленнями Zulip 2.1
  3. OpenNews: Реліз платформи для конфіденційного обміну повідомленнями RetroShare 0.6.5
  4. OpenNews: У відкриту платформу обміну повідомленнями Mattermost інвестовано 20 млн доларів
  5. OpenNews: Едвард Сноуден дав інтерв'ю, в якому поділився думкою про месенджерах
  6. OpenNews: Опублікований Signal Desktop, варіант месенджера для настільних систем

Випуск програми для професійної обробки фотографій Darktable 3.0 (81 +18) Після року активної розробки доступний реліз програми для організації і обробки цифрових фотографій Darktable 3.0 . Darktable виступає в ролі вільної альтернативи Adobe Lightroom і спеціалізується на Недеструктивні роботі з raw-зображеннями. Darktable надає велику добірку модулів для виконання всіляких операцій з обробки фотографій, дозволяє вести базу вихідних фотографій, здійснювати наочну навігацію за наявними знімкам і при необхідності виконувати операції коригування спотворень і поліпшення якості, зберігаючи при цьому вихідний знімок і всю історію операцій з ним. код проекту поширюється під ліцензією GPLv3. бінарні збірки підготовлені для Windows і macOS, а для Linux очікуються в найближче годиною .

Головні зміни:

  • Повна переробка інтерфейсу і перехід на GTK / CSS. Всі елементи інтерфейсу тепер можуть контролюватися за допомогою CSS-тим. Підготовлена ​​серія тим, оптимізованих для роботи на моніторах з низьким і високим дозволом: darktable, darktable-elegant-darker, darktable-icons-darker, darktable-elegant-dark, darktable-elegant-grey, darktable-icons-dark, darktable-icons -grey. Вимоги до мінімальної версії GTK підняті до 3.22.
  • В історії змін тепер відображаються раніше приховані "системні" модулі. Статус модулів в історії відображається іконкою.
  • Підтримка переупорядочивания модулів в порядку застосування до зображення (Ctrl + Shift + Перетягнути).
  • Підтримка призначення гарячих клавіш для окремих слайдеров. Наприклад, управління експокорекцією. Це відкриває можливість для швидкого редагування із застосуванням спеціалізованих пультів.
  • Підтримка операцій undo / redo в режимі світлового столу (lighttable) для міток, колірних міток, рейтингів, метаданих, історії редагування і застосовуваних стилів.
  • Підтримка растрових масок (спеціальний тип параметричної маски).
  • Перероблена стрічка знімків і режими гістограми.
  • Доданий режим збереження квітів в модуль "базова крива". Увага! Цей режим включений за замовчуванням (в режимі "Светлота") і може помітно змінювати вид знову імпортованих файлів в порівнянні з файлами JPEG, створеними камерою.
  • Нові версії модулів "плівкова тональна крива" і "еквалайзер тонів". Модулі надають потужні засоби роботи з зображеннями і можуть повністю замінити модулі "базова крива", "тіні і світла" і "відображення тонів". Інтерфейс модулів досить непростий, тому з логікою роботи простіше познайомитися на реальних прикладах з відео автора .
  • Перероблений модуль придушення шуму за профілем. Додана підтримка профілів нових камер.
  • Новий модуль "3D таблиці пошуку квітів" з підтримкою форматів PNG Hald-CLUT і Cube. Найбільш популярний вільний набір СLUTов можна завантажити за засланні , А з подробицями роботи можна ознайомитися тут .
  • Новий модуль "основні настройки", що дозволяє швидко налаштувати чорну, білу і сіру точки, змінити насиченість і автоматично розрахувати експозицію знімка.
  • Нові модулі "рівні RGB" і "тональна крива RGB", що підтримують роботу з окремими каналами в просторі RGB на додаток до вже існуючим модулям, які працюють в просторі Lab.
  • Інструмент "колірна піпетка" в модулях змішування, тональної кривої, колірних зон і світіння, що підтримує вибірку середнього значення по виділеній ділянці (Ctrl + Клацання по іконці піпетки).
  • Підтримка швидкого пошуку модулів по імені.
  • Доданий режим вибракування зображень (попарне порівняння).
  • Доданий діалог настройки експортованих метаданих, що дозволяє управляти експортом даних Exif, міток, їх ієрархією і даних геотеггінгу.
  • Проведена міграція з POSIX threads на OpenMP.
  • Зроблені множинні оптимізації для SSE і OpenCL.
  • Додана підтримка більше 30 нових камер.
  • Підтримка нового Google Photo API з можливістю створення альбомів безпосередньо з darktable (на даний момент не працює через блокування з боку Google).
  • Значно перероблене керівництво користувача буде опубліковано найближчим часом.
  1. Головна посилання до новини
  2. OpenNews: Випуск програми для професійної обробки фотографій Darktable 3.0 RC
  3. OpenNews: Випуск програми для професійної обробки фотографій Darktable 2.6
  4. OpenNews: Нові системи машинного навчання від Fаcebook і Google. Код для розфарбовування чорно-білих фотографій
  5. OpenNews: Випуск програми для управління фотографіями digiKam 6.2
  6. OpenNews: Реліз програми для обробки фотографій RawTherapee 5.7

Повністю вільний Linux-дистрибутив Hyperbola трансформується в форк OpenBSD (252 +51) Проект Hyperbola , Що входить в підтримуваний Фондом СПО список повністю вільних дистрибутивів, опублікували план переходу на використання ядра і призначених для користувача утиліт з OpenBSD з портированием деяких компонентів з інших BSD-систем. Новий дистрибутив планується поширювати під ім'ям HyperbolaBSD.

HyperbolaBSD планують розвивати як повний форк OpenBSD, який буде розширюватися новим кодом, яке поставляється під ліцензіями GPLv3 і LGPLv3. Створюваний поверх OpenBSD код буде націлений на поступову заміну компонентів OpenBSD, які розповсюджуються під ліцензіями, не сумісними з GPL. Супровід раніше формувалася гілки Hyperbola GNU / Linux-libre буде забезпечено до 2022 року, але майбутні випуски Hyperbola будуть переведені на нове ядро ​​і елементи системи.

В якості причини переходу на кодову базу OpenBSD називається невдоволення тенденціями в розробці ядра Linux:

  • Прийняття до складу ядра Linux технічних засобів захисту авторських прав (DRM), наприклад, в ядро ​​була включена підтримка технології захисту від копіювання звукового і відеоконтенту HDCP (High-bandwidth Digital Content Protection).
  • розвиток ініціативи з розробки драйверів для ядра Linux на мові Rust. Розробники Hyperbola незадоволені застосуванням централізованого сховища Cargo і проблемами зі свободою поширення пакетів з Rust. Зокрема, умови використання торгових марок Rust і Cargo забороняють збереження імені проекту в разі внесення змін або застосування патчів (пакет можна поширювати під ім'ям Rust і Cargo тільки якщо він зібраний з оригінальних вихідних текстів, інакше потрібно отримання попередньої письмової згоди від Rust Core team або зміни імені).
  • Розробка ядра Linux без оглядки на безпеку (Grsecurity більше не вільний проект , А ініціатива KSPP (Kernel Self Protection Project) знаходиться в стагнації).
  • Багато компонентів користувацького оточення GNU і системні утиліти починають нав'язувати застосування зайвої функціональності, котрі дають можливостей для її відключення в процесі побудови. Як приклад наводяться віднесення до обов'язкових залежностям PulseAudio в gnome-control-center, SystemD в GNOME, Rust в Firefox і Java в gettext.

Нагадаємо, що проект Hyperbola розвивається відповідно до принципу KISS (Keep It Simple Stupid) і націлений на надання користувачам простого, легкого, стабільного і безпечного оточення. Раніше дистрибутив формувався на основі стабілізованих зрізів пакетної бази Arch Linux з перенесенням з Debian деяких патчів для підвищення стабільності і безпеки. Система ініціалізації грунтується на sysvinit з портированием деяких напрацювань від проектів Devuan і Parabola. Час супроводу випусків становить 5 років.

  1. Головна посилання до новини
  2. OpenNews: Випуск повністю вільного дистрибутива Hyperbola GNU / Linux-libre 0.3
  3. OpenNews: Фонд СПО визнав Hyperbola повністю вільним дистрибутивом
  4. OpenNews: Debian і Mozilla домовилися про використання бренду Firefox замість Iceweasel
  5. OpenNews: Дистрибутив Trident переходить з BSD-системи TrueOS на Void Linux
  6. OpenNews: GNOME адаптований для управління через systemd

Уразливість в SQLite, що дозволяє віддалено атакувати Chrome через WebSQL (128 +20) Дослідники безпеки з китайської компанії Tencent представили новий варіант уразливості Magellan ( CVE-2019-13734 ), Що дозволяє домогтися виконання коду при обробці в СУБД SQLite певним чином оформлених SQL-конструкцій. Схожа вразливість була опублікована тими ж дослідниками рік тому. Уразливість примітна тим, що дозволяє віддалено атакувати браузер Chrome і домогтися отримання контролю над системою користувача при відкритті підконтрольних зловмисникові web-сторінок.

Атака на Chrome / Chromium здійснюється через API WebSQL, обробник якого грунтується на коді SQLite. Атака на інші додатки можлива тільки якщо вони допускають передачу в SQLite SQL-конструкцій, що надходять ззовні, наприклад, використовують SQLite як формат для обміну даними. Firefox уразливості не схильний до, так як компанія Mozilla відмовилися від реалізації WebSQL в користь API IndexedDB. SQLite використовується в Firefox для зберігання внутрішніх БД на диску, які недоступні для відправки в них довільних SQL-запитів з Web (для атаки на Firefox потрібно внести зміни у внутрішні БД, маючи доступ на запис в локальній файловій системі).

Google усунув проблему у випуску Chrome 79 . У кодової базі SQLite проблема була виправлена 17 листопада, а в кодової базі Chromium - 21 листопада . Проблема присутній в коді движка повнотекстового пошуку FTS3 і через маніпуляцію з тіньовими таблицями (shadow tables, особливий вид віртуальних таблиць з можливістю запису) може привести до пошкодження індексу і переповнення буфера. Детальна інформація про техніку експлуатації буде опублікована через 90 днів.

Новий реліз SQLite з виправленням поки не сформований ( очікується 31 грудня). Як обхідного шляху захисту починаючи з SQLite 3.26.0 може використовуватися режим SQLITE_DBCONFIG_DEFENSIVE, який забороняє запис в тіньові таблиці і рекомендований для включення при обробці зовнішніх SQL-запитів в SQLite. У дистрибутивах вразливість в бібліотеці SQLite поки залишається невиправленої в Debian , Ubuntu , RHEL , openSUSE / SUSE , Arch Linux , Fedora , FreeBSD . Chromium у всіх дистрибутивах вже оновлений і не схильний до уразливості, але проблема може охоплювати різні сторонні браузери функції, які залежать движок Chromium, а також Android-додатки на базі Webview.

Додатково в SQLite також виявлені 4 менш небезпечні проблеми ( CVE-2019-13750 , CVE-2019-13751 , CVE-2019-13752 , CVE-2019-13753 ), Які можуть привести до витоку інформації і обходу обмежень (можуть використовуватися як супутні фактори для атаки на Chrome). Зазначені проблеми усунені в коді SQLite 13 грудня. У сукупності проблеми дозволили дослідникам підготувати робочий експлоїт, що дозволяє виконати код в контексті процесу Chromium, що відповідає за отрисовку.

  1. Головна посилання до новини
  2. OpenNews: Уразливість в vhost-net, що дозволяє обійти ізоляцію в системах на базі QEMU-KVM
  3. OpenNews: Уразливість в СУБД SQLite
  4. OpenNews: віддаленість експлуатована вразливість в SQLite, яка зачіпає браузери на базі Chromium
  5. OpenNews: Представлена ​​нова техніка експлуатації вразливостей в SQLite
  6. OpenNews: Реліз СУБД SQLite 3.30
Обговорення (128 +20) | Тип: Проблеми безпеки | цікаво
Наступна сторінка (раніше) >> Map {| x | x + "?

Дополнительная информация

rss
Карта