SSE4/cci.new

small utility to bootstrap conan recipe from repositories (e.g. GitHub)

★ 0Forks 0PythonGitHub ↗Compare

README

a small utility to bootstrap conan recipes from library repositories (e.g. GitHub). the project uses GitHub GraphQL API to extract the metadata from the repository. afterwards, it passes the metadata to the conan new command. project uses cci.templates to generate almost working recipe skeleton. it also might be useful to run cci.cmake_file_api hook to generate missing components information.

installtion

$ pip install cci.new --upgrade

you will also need a GitHub API Token, within GITHUB_TOKEN environment variable.

usage

run inside your conan-center-index fork (within recipes sub-directory) against project GitHub URL:

cci.new https://github.com/hyperrealm/libconfig

extracted metadata

  • latest release (or tag, if there are no releases)
  • release tarball url
  • tarball sha256
  • description
  • homepage
  • license
  • topics

TODO

detect project type

right now, cci.cmake template is always used. it would be nice to detect project type (e.g. by scanning the repository for typical files like meson.build, CMakeLists.txt, configure, Makefile, etc. to select the appropriate template).

more project hostings

although MANY projects are hosted on GitHub, there are several other popular project hostings we would like to be able to extract metadata from.

use without GITHUB_TOKEN

maybe it's possible to somehow don't require GITHUB_TOKEN environment variable? could it be Github Action or GitHub App? or maybe just simple Web Form hosted somewhere?

Contributors

SSE4

Issues