Об этом проекте
purlvalidator — это библиотека Go под лицензией Apache-2.0, предназначенная для валидации Package-URLs (PURLs). Она работает полностью автономно, что делает ее подходящей для изолированных или ограниченных сред, и проверяет, действительно ли существует пакет, представленный PURL.
Библиотека поставляется с предварительно созданным конечным преобразователем состояний (Finite State Transducer, FST), содержащим известные Package-URLs, собранные MineCode. Она использует этот FST для поиска и подтверждения существования базового PURL (PURL без версии, квалификаторов или подпути).
В настоящее время поддерживаются следующие экосистемы: apk, cargo, composer, conan, cpan, cran, debian, maven, npm, nuget, pypi и swift.
Функция Validate возвращает true, если базовый PURL существует в упакованных данных, false, если он синтаксически верен, но неизвестен, и ошибку, если ввод не является допустимым PURL или содержит версию, квалификаторы или подпуть. Ежедневно публикуется патч-релиз с последним FST, созданным на основе новых собранных URL пакетов. Проект включает цели make для сборки FST, запуска тестов и линтинга.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.