From 00ed418291f1647dc5fb292788a81e35499127fb Mon Sep 17 00:00:00 2001 From: Dexoron Date: Mon, 11 May 2026 23:22:12 +0800 Subject: [PATCH] New TODO.md --- TODO.md | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 62 insertions(+), 8 deletions(-) diff --git a/TODO.md b/TODO.md index 6ac94cd..b09daf0 100644 --- a/TODO.md +++ b/TODO.md @@ -1,9 +1,63 @@ -# TODO +# DCR TODO.md -- Add external package managers (Conan, vcpkg) -- Linker script + direct linker control -- Custom targets/steps -- Cross-compilation and freestanding targets (-nostdinc, -nostdlib, custom target triple like i686-elf) -- Mixed C + ASM in one project (compile .c and .s/.S sources together) -- Per-member include directories in workspace (e.g. include paths for subprojects) -- Build-time code generation (auto-generated headers, pre-build scripts) \ No newline at end of file +Priority list of tasks to turn DCR into a true Cargo killer for C/C++ developers. + +## 🔥 High Priority (Next Releases) + +- [ ] **Git dependencies support** + `git = "https://github.com/user/repo.git#branch"` and `git = "..."@tag` +- [ ] **Conan and vcpkg integration** + Automatic download, installation and linking of packages +- [ ] **Full freestanding / embedded support** + `-nostdlib`, linker scripts, bare-metal targets (i686-elf, aarch64-none-elf, etc.) +- [ ] **Custom build steps / targets** + Ability to define custom pre-build, post-build, codegen steps in `dcr.toml` +- [ ] **Improved mixed C/C++/ASM projects** + Better handling of `.S` and `.asm` files with correct flags +- [ ] **dcr publish + official package registry** + Publish and fetch your own libraries easily + +## ✅ Medium Priority + +- [ ] **Static analysis** (`dcr check`) + Integration with clang-tidy, cppcheck, include-what-you-use +- [ ] **Linter + Formatter** (`dcr fmt`, `dcr lint`) +- [ ] **Hot reload / Live reload** for applications (raylib, SFML, SDL, etc.) +- [ ] **Better cross-compilation experience** + Ready-to-use toolchains + automatic download +- [ ] **Linker script support** + direct linker control +- [ ] **Workspaces improvements** + Per-member include directories, selective builds, better dependency graph +- [ ] **Build-time code generation** + Support for protobuf, flatbuffers, Qt moc, custom generators + +## 📌 Low Priority / Nice to Have + +- [ ] Support for Meson and Ninja as alternative backends +- [ ] Dockerfile generation (`dcr docker init`) +- [ ] First-class Windows MSVC support (currently works but rough) +- [ ] Documentation generation (`dcr doc`) +- [ ] Sanitizers integration (`dcr sanitize`) +- [ ] Benchmarks and comparison with CMake/Meson +- [ ] C++20 modules support (when it becomes stable) + +## 🧠 Future Ideas + +- Official DCR package registry (dcrhub) +- GUI wrapper (dcr-gui) +- Plugin system +- Toolchain manager (like rustup) +- Zig as alternative compiler +- deb/rpm/flatpak/AppImage packaging support + +--- + +**Currently in progress:** +- ... + +**Completed in recent releases:** +- Workspaces +- Cross-compilation +- IDE config generation (VS Code, CLion, compile_commands.json) +- Self-update (`dcr --update`) +- Header tracking