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
Marcus Holland-Moritz
5d341ec60e
chore: activate more clang-tidy warnings
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
13b7175e9a
fix: forward forwarding-refs or change to const refs
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
7a478e5623
chore: don't warn about an unavoidable free()
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
bf9be86456
refactor(metadata_types): make ::unix_path() less Windows specific
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
556004ce7e
chore: add initial .clang-tidy
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
6d9e8811b2
chore: add exceptions for clang-tidy
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
e42f7dfc46
refactor(string_table): don't unnecessarily resize buffer
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
91d292f464
refactor: make implementation class final
2025-03-14 15:07:49 +01:00
Marcus Holland-Moritz
887134a841
build: turn on warnings-as-errors in git builds with MSVC
2025-03-14 15:07:49 +01:00