Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: mcpplibs/cmdline
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: feat/mcpp-build-support
Choose a base ref
...
head repository: mcpplibs/cmdline
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 9 commits
  • 16 files changed
  • 2 contributors

Commits on May 8, 2026

  1. Merge pull request #1 from mcpplibs/feat/mcpp-build-support

    feat: add mcpp build support and switch Linux CI to mcpp
    Sunrisepeak authored May 8, 2026
    Configuration menu
    Copy the full SHA
    c49b046 View commit details
    Browse the repository at this point in the history

Commits on May 9, 2026

  1. ci: switch to mcpp build (.xlings.json pins mcpp 0.0.3) (#2)

    Replaces the existing CI with a single mcpp-driven Linux job:
    - `.xlings.json` declares `mcpp = { linux = "0.0.3" }`.
    - `.github/workflows/ci.yml` boots xlings, runs `xlings install -y`,
      then `mcpp build` + `mcpp test` against the existing mcpp.toml.
    Sunrisepeak authored May 9, 2026
    Configuration menu
    Copy the full SHA
    4fd696f View commit details
    Browse the repository at this point in the history
  2. ci: cache mcpp's self-bootstrapped sandbox (~800 MB → instant) (#3)

    mcpp 0.0.3's binary lives at xim-x-mcpp/0.0.3/bin/mcpp; on first
    run it self-detects home as that grandparent and bootstraps musl-gcc
    + binutils + glibc + ninja + patchelf into <home>/registry/data/xpkgs.
    Toolchain set is version-pinned by mcpp 0.0.3, so a fixed cache key
    is safe. Cache-hit runs skip the ~800 MB download.
    Sunrisepeak authored May 9, 2026
    Configuration menu
    Copy the full SHA
    cca6df0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3313a39 View commit details
    Browse the repository at this point in the history

Commits on May 11, 2026

  1. chore: migrate deps to namespace syntax (mcpp 0.0.6) (#5)

    * chore: migrate deps to namespace syntax (mcpp 0.0.6)
    
    Updates mcpp.toml to use explicit namespace fields:
    - [package].namespace added
    - [package].name uses short name only
    - [dependencies.compat] / [dev-dependencies.compat] for non-modular libs
    - [dependencies.mcpplibs.capi] for C API wrappers
    
    * ci: retrigger with fixed mcpp 0.0.6
    
    * ci: retrigger
    
    * ci: retrigger with mcpp 0.0.7
    Sunrisepeak authored May 11, 2026
    Configuration menu
    Copy the full SHA
    649d659 View commit details
    Browse the repository at this point in the history
  2. fix: use [dev-dependencies.compat] for gtest

    gtest is a compat (non-modular) package in mcpp-index. Declare it
    under [dev-dependencies.compat] so mcpp resolves the correct namespace.
    
    Required for mcpp 0.0.10+ namespace-aware dependency pipeline.
    Sunrisepeak committed May 11, 2026
    Configuration menu
    Copy the full SHA
    8eab0b3 View commit details
    Browse the repository at this point in the history

Commits on May 12, 2026

  1. chore: bump mcpp to 0.0.11 + update README

    - .xlings.json: mcpp 0.0.7 → 0.0.11
    - CI: xlings 0.4.25 → 0.4.30, mcpp 0.0.11
    - README: expand mcpp build/usage instructions
    Sunrisepeak committed May 12, 2026
    Configuration menu
    Copy the full SHA
    831c3a1 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c0e7078 View commit details
    Browse the repository at this point in the history

Commits on Jul 13, 2026

  1. feat: add shell completion generation (bash, fish, zsh) (#8)

    * feat: add shell completions skeleton
    
    * feat(completions): add fish support
    
    * docs: add shell completions example
    
    * build: re-support xmake
    
    * feat(completions): add bash support
    
    * feat(completions): add zsh support
    
    * docs: update api.md with shell completions
    
    * test(completions): add shell completion tests
    
    * fix(completions): fix linkage for gcc 15.1.0-musl
    
    Move SubCmdEntry and ScBranch from anonymous namespace to named `detail`
    namespace in bash and zsh completion partitions.
    
    GCC 15.1.0 enforces C++20 module linkage rules more strictly: types with
    internal linkage (anonymous namespace) cannot appear as template
    arguments to module-attached templates like std::vector. This exposes
    TU-local entities through template instantiation, causing "exposes
    TU-local entity" errors.
    
    ScBranch additionally required moving to namespace scope because local
    structs (no linkage) triggered an ICE when instantiating std::vector
    inside an external-linkage function in a module implementation.
    
    * chore: bump mcpp 0.0.11 to 0.0.89
    johanvx authored Jul 13, 2026
    Configuration menu
    Copy the full SHA
    d228811 View commit details
    Browse the repository at this point in the history
Loading