bobluppes / bobluppes/graaf

Publish Graaf to vcpkg and Conan package registries

Offen
#320 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
C++
Sterne
413
Forks
67
Ø Merge
7 Std. 24 Min.
Gemergte PRs (30 T.)
53

Beschreibung

## Summary

Graaf is not currently published on any C/C++ package registry (vcpkg, Conan Center, Homebrew, etc.). The only documented installation methods ([docs/docs/quickstart/installation/installation.md](../blob/main/docs/docs/quickstart/installation/installation.md)) are: manually copying the `graaflib` directory, or CMake `FetchContent` pointed at the GitHub repo.

## Current state

- No `vcpkg.json` / port file exists in the repository or in the [microsoft/vcpkg](https://github.com/microsoft/vcpkg) ports directory.
- No `conanfile.py` exists in the repository, and there is no listing under [conan-center-index](https://github.com/conan-io/conan-center-index).
- `packaging/graaf.pc.in` generates a pkg-config file on install, but the library itself is not distributed through any registry that would let a pkg-config-based dependency manager pull it automatically.

## Why this matters

Teams building on C++ increasingly manage dependencies through vcpkg or Conan rather than vendoring source or hand-rolling `FetchContent` declarations, both because it gives them reproducible, auditable dependency graphs and because it fits existing internal artifact/proxy setups. A dependency that isn't available through any of the mainstream registries adds friction and manual review overhead for adopting teams, and complicates keeping the library up to date.

## Suggested resolution

- Add a `vcpkg.json` manifest and a port definition, and submit it to `microsoft/vcpkg`.
- Add a `conanfile.py` (or `conanfile.txt` reference) and submit a recipe to `conan-io/conan-center-index`.
- Document both installation paths in the installation guide alongside the existing methods.
- Consider a Homebrew formula for macOS/Linuxbrew users, given the library is header-only and has minimal build requirements.

## Acceptance criteria

- [ ] Graaf can be installed via `vcpkg install graaf` (or equivalent) once the vcpkg PR is merged.
- [ ] Graaf can be consumed via a Conan recipe once the Conan Center PR is merged.
- [ ] Installation docs list these methods.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

The repository's CMake configuration and packaging files are the starting point. Examine the existing CMakeLists.txt and the packaging/graaf.pc.in file. Research vcpkg and Conan documentation to understand how to create a port file (vcpkg.json) and a conanfile.py. The acceptance criteria require submitting PRs to external registries (microsoft/vcpkg and conan-io/conan-center-index), so understanding their contribution guidelines is essential. Success means Graaf can be installed via `vcpkg install graaf` and consumed via Conan, with updated installation documentation.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
cmake, cpp
Bereich
build-system, developer-experience, tooling
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Aktiv
Klarheit
Klar beschrieben
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.