From: Christian Weisgerber Subject: got status misses unversioned files (was: Re: LLVM 18.1.8 update in base) To: gameoftrees@openbsd.org Date: Wed, 31 Jul 2024 17:42:57 +0200 Robert has published his LLVM 18 update for OpenBSD base. As a first step to testing this, I want to apply the changes to a src checkout and then commit them to a branch. > How to test: > > rm -rf /usr/src/gnu/llvm/{clang,lld,lldb,llvm} > tar -C /usr/src -xvzf llvm18.tar.gz Let's stop here. At this point, "got status" reports numerous modified files 'M' and missing files '!', but no unversioned files '?'. $ got st -s \? gnu/llvm $ However, extracting the archive has certainly added new files. Why don't they show up as unversioned items? Now, when I try to remove the missing files '!': $ got rm -R -s ! gnu/llvm D gnu/llvm/clang/ModuleInfo.txt got: gnu/llvm/clang/cmake/caches/Release.cmake: file has unexpected status Let's check: $ got st gnu/llvm/clang/cmake/caches/Release.cmake ? gnu/llvm/clang/cmake/caches/Release.cmake Huh. $ got st gnu/llvm/clang/cmake/caches M gnu/llvm/clang/cmake/caches/BOLT-PGO.cmake M gnu/llvm/clang/cmake/caches/BOLT.cmake M gnu/llvm/clang/cmake/caches/CrossWinToARMLinux.cmake M gnu/llvm/clang/cmake/caches/Fuchsia-stage2.cmake M gnu/llvm/clang/cmake/caches/Fuchsia.cmake M gnu/llvm/clang/cmake/caches/PGO.cmake $ got st gnu/llvm/clang/cmake/caches/* M gnu/llvm/clang/cmake/caches/BOLT-PGO.cmake M gnu/llvm/clang/cmake/caches/BOLT.cmake M gnu/llvm/clang/cmake/caches/CrossWinToARMLinux.cmake M gnu/llvm/clang/cmake/caches/Fuchsia-stage2.cmake M gnu/llvm/clang/cmake/caches/Fuchsia.cmake M gnu/llvm/clang/cmake/caches/PGO.cmake ? gnu/llvm/clang/cmake/caches/Release.cmake ? gnu/llvm/clang/cmake/caches/VectorEngine.cmake So running "got status" on a a new, unversioned file shows it as such, but a recursive status simply ignores it. Is that a bug or is my expectation wrong? -- Christian "naddy" Weisgerber naddy@mips.inka.de