Conan 2.0 est disponible

Par:
fredericmazue

mer, 11/01/2023 - 12:44

Conan est un gestionnaire de dépendances et de packages pour les langages C et C++, décentralisé, avec une architecture client-serveur. Il fonctionne sur toutes les plates-formes (Windows, Linux, OSX, FreeBSD, Solaris, etc.) et peut être utilisé pour développer pour toutes les cibles, y compris embarquées, mobiles (iOS, Android) et bare metal. Il s'intègre également à tous les systèmes de construction tels que CMake, Visual Studio (MSBuild), Makefiles, SCons, etc., y compris les systèmes propriétaires.

Conan est spécifiquement conçu et optimisé pour accélérer le développement et l'intégration continue des projets C et C++. Avec une gestion binaire complète, il peut créer et réutiliser n'importe quel nombre de binaires différents (pour différentes configurations comme les architectures, les versions de compilateur, etc.) pour n'importe quel nombre de versions différentes d'un paquet, en utilisant exactement le même processus sur toutes les plateformes. 

Conan vient de sortir en version 2.0.

Conan 2.0 définit de nouveaux traits d'exigence (en-têtes, bibliothèques, construction, exécution, test, package_id_mode, options, transitive_headers, transitive_libs) et de nouveaux types de packages (statique, partagé, application, en-tête uniquement) pour mieux représenter les relations qui se produisent entre les binaires C et C++, comme des exécutables ou des bibliothèques partagées liées avec des bibliothèques statiques ou des bibliothèques partagées.

Conan 2.0 vient avec une nouvelle API Python modulaire. Il s'agit d'une véritable API, avec des blocs de construction qui sont déjà utilisés pour construire les commandes intégrées de Conan, mais qui permettront d'autres extensions.

Conan 2.0 vient également avec une CLI repensée pour une meilleure cohérence, en supprimant les ambiguïtés et en améliorant l'expérience utilisateur. La nouvelle CLI envoie également toutes les informations, les avertissements et les messages d'erreur à stderr, tout en conservant le résultat final dans stdout, en autorisant plusieurs formats de sortie comme --format=html ou --format=json et en utilisant des redirections pour créer des fichiers, par exemple --format=json > myfile.json. Les informations fournies par la CLI sont plus structurées et approfondies afin de pouvoir être utilisées plus facilement pour l'automatisation, en particulier dans les systèmes CI/CD.

Conan est un logiciel libre sous licence MIT disponible sur GitHub.