Skip to content
This repository was archived by the owner on Jun 8, 2025. It is now read-only.

thoughtpolice/qq

Repository files navigation

qq

Caution

This repository is deprecated; it has migrated to https://github.com/thoughtpolice/a

This repository contains my extremely experimental, not-production-ready, outright dangerous work that is all based around Jujutsu.

The code here is different than the code I contribute directly to upstream; the work here is too experimental for now. Perhaps one day this repository might be obsolete and most of my work will all be in Jujutsu itself. But for now having a separate repository is the best way to iterate quickly without disturbing everyone and while researching, and in practice I'll always want a laboratory to cook things up.

In short, you probably don't want to bother with this stuff unless you're direcly working with me on it, so you know what you're up against.

This project uses Buck2 for the build system and has significant infrastructure to drive it. One goal — among others — is to explore build system <-> filesystem <-> version control integration, and this requires a system like Buck to achieve (so using it is a good way to figure that out.)

If you have questions or want to help out, you can contact me, @aseipp, on the Jujutsu Discord.

TODO

Broadly unorganized and in no particular order.

General

TBD.

Upstream Jujutsu

TBD.

Buck2

  • Toolchains
    • Hermetic toolchain
      • Rust
      • Clang (all platforms)
      • Windows
        • Is hermetic MSVC possible?
  • DevEx improvements
    • Turnkey Codespaces for instant-hacking
      • Pre-warmed/Pre-built devcontainer
        • Current boot time is ~several minutes on a cold start
      • Tested on macOS, Windows, Linux
      • devcontainer that can be launched from GitHub UI
      • dotslash, rust-analyzer, buck2, rust-project preinstalled
      • Working buck2 build/rust-analyzer support on first click
    • Target Determination
    • Dependency monitoring + security updates
      • Dependabot integration with our third-party Cargo.toml?
        • How would we run reindeer buckify?
      • osv.dev integration?
        • RUSTSEC support based on Cargo.lock
        • Generic 3rd party support (BoringSSL, zstd, etc)
          • Still needs testing: mimalloc, capnproto, zlib
        • Open issues:
  • Platform support
    • macOS
      • x86_64 macOS support
        • Requires x86_64 binaries for smoltar; needs macos-13 runners
    • Windows
      • aarch64-windows support
        • Should come in Q4 2024 when GHA runners are available?
      • windows_shim for DotSlash, improving Windows ergonomics
        • Requires committing .exe files, so size is absolutely critical
        • Does not exist upstream; TBA

Upstream bugs and PRs:

License

Apache 2.0.

About

Explosive testing grounds

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages