Use when writing RPM spec files, building RPMs with rpmbuild/mock/koji, debugging build failures, packaging software for Fedora/RHEL/CentOS, or working with rpm macros, scriptlets, dependencies (BuildRequires/Requires), subpackages, SRPMs, rpmlint, signing, or yum/dnf repositories. Also use when packaging C/C++, Python, Go, Rust, or Java projects as RPMs.