После почти трёх лет работы консорциум Khronos, занимающийся разработкой графических стандартов, опубликовал спецификацию Vulkan 1.4, определяющую API (khronos.org) для доступа к графическим и вычислительным возможностям GPU. Новая спецификация вобрала в себя накопившиеся расширения, которые ранее позиционировались как опциональные, а также предоставила ряд новых возможностей и повысила минимальные требования к оборудованию. Инструментарий Vulkan SDK планируют опубликовать в январе 2025 года.
CADBase предназначен для размещения информации о чертежах и сопутствующих материалах (стандарты, поставщики, конструкторская документация).
Основной частью ресурса является страница компонента:
основная информация о компоненте, его характеристики и связанные файлы;
модификации компонента с параметрами и сопутствующими файлами;
наборы файлов для САПР и других программ;
информация о сопутствующих материалах компонента: стандарты, поставщики, каталоги, ключевые слова.
Основные отличия CADBase от других решений (которых появилось достаточно много за последние несколько лет, очень сильно затянули с запуском):
Компонент (в рамках CADBase) это совокупность: модификаций, стандартов, поставщиков и других связанных данных с чертежом.
К модификациям компонента привязываются наборы файлов для различных САПР.
Реализовано представление «базового» компонента для возможности участия нескольких поставщиков (это может быть использовано для поиска поставщика базового компонента или поиска производства требуемого изделия по чертежу).
Стандарт в рамках CADBase это отдельная от компонента сущность, которая связывается с компонентом.
Для всех пользователей доступ к платформе может осуществляться через сайт или API (используется единый токен).
обмен материалами между пользователями, добавление в избранное и т.п.;
хранение чертежей и документации с разграничением доступа.
Сейчас ведется работа по документированию API.
В перспективе планируется сделать возможность self-host (после того, как будут открыты исходники).
В некоторых регионах наблюдается проблема: первая загрузка сайта занимает 20-30 сек, в чем причина неизвестно. В нормальной ситуации, первая загрузка 2-3 секунды.
Для некоторых вызовов функций используется unsafe, так как эти функции предоставляются как они есть, не адаптируя их к конвенциями Rust. По такому же принципу устроен crate libc, который служит базовым crate для доступа к libc и используется как основа для пострения библиотек с безопасным интерфейсом.
Проект создан в рамках Win32 Metadata Project, который призван облегчить создание API для разных языков программирования. Вторая библиотека, которая была создана на основе Metadata Project на первое фазе проекта - C#/Win32. Также Microsoft анонсировала начало работы над версией для С++, которая использует современный стиль языка.
Разработчики QGIS, свободной кросс-платформенной ГИС, представили документацию к собственной реализации API для написания дополнений на языке Python для QGIS 3.x — PyQGIS API:
Опубликован перевод серии из 5 статей, предназначенных для новичков сетевого программирования (знание языка C является обязательным условием), в которой рассказано, как с помощью интерфейса прикладного программирования Socket API системы UNIX создавать сервера и сетевые клиентские программы.
Сегодня блоги — это не просто персональные дневники; они стали идеальной платформой публикации в Интернете. Внутри предприятия блоги часто являются центральным каналом взаимодействий в управлении, разработке и маркетинге, что делает важным выбор в качестве инструмента для ведения блогов открытого программного обеспечения, соответствующего стандартным XML API. Познакомьтесь с одной из таких программ, MetaWeblog (широко применяемый API блогов), и научитесь использовать этот API для написания своих собственных инструментальных программ для поддержки блогов.
Подключаемые модули аутентификации (Pluggable Authentication Modules, PAM) – это набор API, используемых разработчиками приложений для функций, связанных с безопасностью, таких как аутентификация пользователей, шифрование данных, взаимодействие с LDAP и т.д. В этой статье дается базовое введение в модель PAM для Linux, приводятся примеры настройки PAM и описывается создание PAM-приложения входа в систему за 10 простых шагов.
В ядре Linux® 2.6.25 появилось новое состояние приостановки выполнения процесса TASK_KILLABLE, представляющее собой альтернативу эффективному, но потенциально приводящему к невозможности завершения процесса состоянию TASK_UNINTERRUPTIBLE и более безопасному, но легко прерываемому TASK_INTERRUPTIBLE. Своим появлением состояние TASK_KILLABLE обязано проблеме, возникшей в 2002 г. и связанной с драйвером файловой системы OpenAFS, который блокировал все сигналы и ожидал наступления события, находясь в состоянии, допускающем прерывания. Новое состояние приостановки аналогично TASK_UNINTERRUPTIBLE, но позволяет обрабатывать фатальные сигналы. В данной статье автор освещает это нововведение и на примерах исходных текстов ядра Linux 2.6.26 и более ранней версии 2.6.18 обсуждает связанные с ним изменения и новые API.