@@ -4,51 +4,6 @@ See [README.md](README.md) for a project overview, and
44[ CONTRIBUTING.md] ( CONTRIBUTING.md ) for build instructions, code style,
55pre-commit setup, Git workflow, and pull request guidelines.
66
7- ## Build
8-
9- See [ CONTRIBUTING.md] ( CONTRIBUTING.md ) for platform-specific dependency setup.
10- Use these flags for a development build:
11-
12- ``` bash
13- cd build
14- cmake -DCMAKE_BUILD_TYPE=Debug -DDEBUG_ASSERTIONS_FATAL=ON -DCMAKE_EXPORT_COMPILE_COMMANDS=ON ..
15- cmake --build . --parallel $( nproc)
16- ctest # run tests (Google Test)
17- ```
18-
19- ## Code Style
20-
21- See [ CONTRIBUTING.md] ( CONTRIBUTING.md ) for full conventions. Key points for
22- AI-generated code:
23-
24- - ** Formatting** : ` .clang-format ` (Google base, 4-space indent, 8-space continuation). Only format new/modified code — never mass-reformat.
25- - ** Separate formatting commits** from logic commits.
26-
27- ### C++ Quick Reference
28-
29- - Classes: ` CamelCase ` . Methods: ` camelBack() ` . Members: ` m_prefix ` . Pointers: ` pPrefix ` . Constants: ` kPascalCase ` . Enums: ` enum class CamelCase ` .
30- - CO/setting keys: ` snake_case ` .
31- - No naked ` new ` /` delete ` — use ` std::make_unique ` , ` std::make_shared ` , or ` make_parented ` .
32- - ` VERIFY_OR_DEBUG_ASSERT(cond) { recovery; } ` for defensive checks.
33- - ` override ` on all virtual overrides; omit redundant ` virtual ` .
34- - ` QStringLiteral("...") ` for string literals. ` tr("...") ` for translatable strings.
35- - No ` goto ` . No ` Q_UNUSED ` (use unnamed params). No C-style enums.
36- - ` #pragma once ` , not include guards.
37- - Include order: matching header → system → Qt → library deps → Mixxx local → forward decls. Alphabetical within groups.
38- - Wrap new code in ` namespace mixxx {} ` . Anonymous namespace for file-local helpers in .cpp.
39- - Non-const ref out-params: use pointers, not references (legacy convention).
40- - Lambdas: use carefully — they get extra review scrutiny for lifetime/control-flow issues.
41-
42- ## Git & PR Workflow
43-
44- See [ CONTRIBUTING.md] ( CONTRIBUTING.md ) for full details. Key rules:
45-
46- - One branch per feature/bugfix. Every commit must build.
47- - Small commits. Imperative commit messages, 72-char wrap, describe what + why.
48- - Bug fixes → stable branch (e.g. ` 2.5 ` ). Features → ` main ` .
49- - Don't rebase without reviewer agreement. Use ` --fixup ` commits, only squash before merge if requested.
50- - Keep PRs focused — no unrelated formatting, config, or refactoring changes mixed in.
51-
527## Key Architecture
538
549- ** ControlObject/ControlProxy** : ` [Group], key_name ` inter-component communication.
0 commit comments