jj/.github/workflows
Austin Seipp e15429ba91 cli: make git support optional
There are some experiments to try and compile `jj` to WebAssembly, so that we
might be able to do things like interactive web tutorials. One step for that
is making `git` support in `jj-cli` optional, because we can stub it out for
something more appropriate and it's otherwise a lot of porting annoyance for
both gitoxide and libgit2.

(On top of that, it might be a useful build configuration for other experiments
of mine where removing the need for the large libgit2 depchain is useful.)

As part of this, we need to mark `jj-lib` as having `default-features = false`
in the workspace dependency configuration; otherwise, the default behavior
for Cargo is to compile with all its default features, i.e. with git support
enabled, ignoring the `jj-cli` features clauses.

Other than that, it is fairly straightforward junk; it largely just sprinkles
some `#[cfg]` around liberally in order to make things work. It also adjusts the
CI pipeline so this is tested there, too, so we can progressively clean it up.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
2025-01-08 22:02:21 +00:00
..
build-binaries.yml github: bump actions/upload-artifact in the github-dependencies group 2024-12-18 10:15:50 -06:00
build-nix.yml github: add merge_group event to several workflows 2025-01-07 21:26:57 -06:00
build.yml cli: make git support optional 2025-01-08 22:02:21 +00:00
codespell.yml github: add merge_group event to several workflows 2025-01-07 21:26:57 -06:00
dependabot.yml github: add merge_group event to several workflows 2025-01-07 21:26:57 -06:00
docs.yml github: migrate all actions to ubuntu-24.04 2025-01-07 10:30:29 -06:00
release.yml github: migrate all actions to ubuntu-24.04 2025-01-07 10:30:29 -06:00
scorecards.yml github: migrate all actions to ubuntu-24.04 2025-01-07 10:30:29 -06:00