2828 Commits

Author SHA1 Message Date
Marcus Holland-Moritz
8bfad8c691 docs: avoid nested indentation due to ronn-ng bug (fixes #249)
Given how long the [issue](https://github.com/apjanke/ronn-ng/issues/16)
is open already, it probably won't be fixed very soon.

Furthermore, this makes the documentation of `tidy_strategy` more
consistent with other options (e.g. `mlock`).
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
ba7332d2e5 chore: update folly/fbthrift 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
65588f3843 chore: include folly/portability/Unistd.h for R_OK etc 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
84e2a0e599 chore: provide single-header fast_float.h for folly/Conv.cpp 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
1f7949d25b chore(similarity_ordering): use new header for folly::Bits 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
dd69d7eb8b chore(block_manager): avoid use of deprecated thrift API 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
732ad42a16 build: no -Werror for the time being 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
9b7a1b939e feat: add a few more metadata consistency checks 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
e13d9cb6eb chore: add binary for fuzzing the reader library 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
6424c6ff85 build: ensure fuzzing binaries can be built without warnings 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
bfadb40615 refactor(test_helpers): improve os_access_mock flexibility / readability 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
5d2fefa918 chore(fstypes): show section version in dump 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
78b8af8f8b feat(filesystem_v2): show compression metadata in dump/info_as_json 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
4538a8a3c8 fix(rewrite_filesystem): only recompress blocks if actually requested 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
48f423504c build: enable -Wnrvo warnings when available 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
c86118fdd7 refactor: enable NRVO in a few places 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
afa370c7fa build: add -Wpessimizing-move 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
9df98e69f0 build: -Wuseless-cast is a C++ warnings 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
5202677d6c refactor(fragment_order_parser): use constexpr array instead of map 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
1d12e081c7 refactor(global_entry_data): use flat_hash_map instead of F14FastMap
The F14 map in combination with range-v3 was causing strange warning
with some versions of GCC:

```
    inlined from 'static void dwarfs::writer::internal::global_entry_data::index(map_type<std::__cxx11::basic_string<char>, unsigned int>&)' at /home/mhx/git/github/dwarfs/src/writer/internal/global_entry_data.cpp:63:51:
/usr/lib/gcc/x86_64-pc-linux-gnu/13/include/g++-v13/bits/stl_iterator_base_funcs.h:162:7: error: iteration 288230376151711743 invokes undefined behavior [-Werror=aggressive-loop-optimizations]
  162 |       while (__n--)
      |       ^~~~~
```
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
7020b4a10d fix: ranges::views::join with string literal includes \0 in result 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
a340410365 fix: remove access() implementation from FUSE driver (see gh #244) 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
f3afc72ea0 feat(lzma): support more lzma options (mode, mf, nice, depth) 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
294d711db2 fix: explicitly set UTF8 code page on windows 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
7a7d336176 test: add debug output for tools test 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
1bad002150 test: default initialize members 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
329d342e7e refactor(pages): string -> string_view 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
56dedbd05e build: update preferred version of parallel hashmap 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
a8938d5623 test: speed up tools test 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
b349e584e0 feat: support case-insensitive lookups (fixes gh #232) 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
f01f4a4ed2 refactor(metadata_v2): no need to prefix with internal:: 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
3a895769de feat: allow uid/gid override in filesystem and FUSE driver (see gh #244) 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
2ff7602192 feat: support extracting only files matching glob patterns (fixes gh #243) 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
853d8ca966 test: factor out mtree parser 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
c427808bb1 feat: use glob-to-regex to simplify and enhance rule_based_entry_filter 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
5d19513829 feat: add glob matcher class and glob-to-regex transformer 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
86d1ef655c feat(metadata_types): add directory_view::self_entry_view() 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
07f759a3f4 fix(metadata_v2): check for any files before building hardlink table 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
3504ce97ef fix(block_cache): skip prefetch if the block is already cached 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
48152b9412 fix(scanner): use rvalue refs to ensure type definition isn't required 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
86a751ebc3 refactor: switch test code to using exception_str 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
f2b369dc51 chore: update .clang-tidy 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
344ac5a853 fix(metadata_types): don't slice bundled values 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
a2fb7a9993 chore(block_cache): add clang-tidy annotations for not moving rvalues 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
b901d17960 refactor(block_cache): don't move if we don't have to 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
b80fecbf85 refactor: move default initialization to members 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
f847a6e566 chore(compression): annotate that we intentionally don't move rvalue 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
328abe1303 fix(scope_exit): move, don't forward 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
c68820d40f refactor(lz4): use memcpy instead of reinterpret_cast 2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
68e0bcd480 chore: add clang-tidy exceptions for const_casts 2025-03-14 15:07:49 +01:00