aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* changelog (#661)Dan Engelbrecht2025-11-241-1/+1
|
* GetSystemMetrics for Mac,Linux (#660)Stefan Boberg2025-11-242-5/+151
| | | Implemented GetSystemMetrics function for Mac and Linux
* increase timeout and add retry when testing host connectivity (#659)Dan Engelbrecht2025-11-214-8/+8
|
* fix block store file appender (#658)Dan Engelbrecht2025-11-201-3/+43
| | | * fix bug where we write buffered data instead of provided data in BlockStoreFileAppender
* Merge pull request #653 from ue-foundation/lm/service-install-permissionsLiam Mitchell2025-11-191-0/+4
|\ | | | | Make files writeable after full service install to avoid issues when attempting to update from a read-only source such as p4
| * Make files writeable after full service install to avoid issues when ↵Liam Mitchell2025-11-171-0/+4
| | | | | | | | attempting to update from a read-only source such as p4
* | loose chunk filtering bug when using wildcards (#654)Dan Engelbrecht2025-11-186-26/+529
| | | | | | | | | | | | | | | | | | | | * fix filtering of loose chunks when downloading with a filter add tests * changelog * move InlineRemoveUnusedHashes * remove extra braces
* | Added actions to drop all projects or all z$ namespaces. (#655)Martin Ridgers2025-11-183-2/+54
|/ | | | | | | | | | | * Save references to the project and zcache tables * Add an attribute to table rows with the actionable project/namespace id * Drop-all option for projects and cache namespaces * Updated frontend .zip archive * Edited changelog
* add append-only buffering of BlockStoreFile (#652)Dan Engelbrecht2025-11-171-9/+124
| | | | * add append-only buffering of BlockStoreFile replaces use of BasicFileWriter in Compact which bypassed cached position in BlockStore
* Include version string on the dashboard's start page. (#651)Martin Ridgers2025-11-174-2/+26
| | | | | | | | | | | * Method to get plain text from an async request * Include server's version on the dashboard start page * Same paragraph style as the rest of the method * Updated changelog * Update frontend archive
* fix wildcard matching (#650)Dan Engelbrecht2025-11-171-0/+10
|
* remove local-directory prefix for wildcards (#647)Dan Engelbrecht2025-11-121-0/+5
|
* control cache upload (#646)Dan Engelbrecht2025-11-1211-24/+65
| | | * add option to enable/disable upload to builds cache
* Change curl defaults on MacOS (#645)Stefan Boberg2025-11-1112-28/+146
| | | | | | | * changed curl config to match the default from vcpkg (i.e `CURL_CA_FALLBACK=ON`) * disables use of Secure Transport for Mac since it's deprecated * Also worked around an issue (with `CURL_CA_BUNDLE`) where cross compiling curl on Mac would not configure curl in the same way as when compiling natively. This meant builds would not download on ARM macs when the CI build machine architecture was x86. The workaround should be redundant if we upgrade to 8.17 and use Apple SecTrust for cert validation. This should happen soon. * Also added various verbose logging to facilitate trouble shooting
* fix missing auth (#644)v5.7.9-pre18v5.7.9-pre17Dan Engelbrecht2025-11-112-17/+5
| | | * fix missing auth
* add `--boost-worker-memory` option to zen builds (#639)Dan Engelbrecht2025-11-106-56/+82
|
* fix parsing of assume http2 from server discovery (#643)Dan Engelbrecht2025-11-101-1/+1
|
* add check that we have enough free space to complete the builds download (#640)Dan Engelbrecht2025-11-102-6/+56
| | | * add check that we have enough free space to complete the builds download
* fix lost assume-http2 option when resolving host in zen builds / project ↵Dan Engelbrecht2025-11-102-3/+17
| | | | commands (#642)
* switch to xmake for package management (#611)Stefan Boberg2025-11-0728-94/+334
| | | | | | | | | | | | | | | | | | | | | | This change removes our dependency on vcpkg for package management, in favour of bringing some code in-tree in the `thirdparty` folder as well as using the xmake build-in package management feature. For the latter, all the package definitions are maintained in the zen repo itself, in the `repo` folder. It should now also be easier to build the project as it will no longer depend on having the right version of vcpkg installed, which has been a common problem for new people coming in to the codebase. Now you should only need xmake to build. * Bumps xmake requirement on github runners to 2.9.9 to resolve an issue where xmake on Windows invokes cmake with `v144` toolchain which does not exist * BLAKE3 is now in-tree at `thirdparty/blake3` * cpr is now in-tree at `thirdparty/cpr` * cxxopts is now in-tree at `thirdparty/cxxopts` * fmt is now in-tree at `thirdparty/fmt` * robin-map is now in-tree at `thirdparty/robin-map` * ryml is now in-tree at `thirdparty/ryml` * sol2 is now in-tree at `thirdparty/sol2` * spdlog is now in-tree at `thirdparty/spdlog` * utfcpp is now in-tree at `thirdparty/utfcpp` * xmake package repo definitions is in `repo` * implemented support for sanitizers. ASAN is supported on windows, TSAN, UBSAN, MSAN etc are supported on Linux/MacOS though I have not yet tested it extensively on MacOS * the zencore encryption implementation also now supports using mbedTLS which is used on MacOS, though for now we still use openssl on Linux * crashpad * bumps libcurl to 8.11.0 (from 8.8.0) which should address a rare build upload bug
* get oplog attachments (#622)Dan Engelbrecht2025-11-0711-290/+1558
| | | * add support for downloading individual attachments from an oplog
* move progress bar to separate file (#638)Dan Engelbrecht2025-11-0710-618/+591
| | | * move progress bar to separate file
* remotestore op refactorings (#637)Dan Engelbrecht2025-11-067-748/+927
| | | | | | * broke out BuildLogOutput to separate file * refactored out GetBlockDescriptions * log progress improvements * refactorings to accomodate oplog download operations
* merge 5.7.8 minimal release (#635)Dan Engelbrecht2025-11-061-0/+2
| | | merge back all the cherry-picks
* compress partial file chunks in blocks if appropriate (#632)v5.7.9-pre8v5.7.9-pre7v5.7.9-pre6v5.7.9-pre5v5.7.9-pre4v5.7.9-pre3v5.7.9-pre11v5.7.9-pre1v5.7.9-pre0v5.7.8-pre11v5.7.8-pre10v5.7.8Dan Engelbrecht2025-11-041-13/+17
| | | | | - Improvement: Hide compress/download rates when uploading build when complete - Improvement: Compress partial file chunks inside blocks if appropriate - Bugfix: Don't display "Validating" progress title during download if validation is disabled
* refactor MergeChunkedFolderContents to not reallocate ↵Dan Engelbrecht2025-11-041-9/+35
| | | | Result.ChunkedContent.ChunkOrders for each path added (#626)
* add `--verbose-http` option to builds commands (#630)Dan Engelbrecht2025-11-044-4/+70
|
* abort build upload if we fail to finalize a build part (#623)Dan Engelbrecht2025-11-032-14/+55
| | | * abort build upload if we fail to finalize a build part
* fix clean directory and make them use effective threading where appropriate ↵v5.7.8-pre5v5.7.8-pre3v5.7.8-pre2Dan Engelbrecht2025-11-035-92/+76
| | | | | | (#625) fix retry logic so it does not immediately sleep if file does not exist make sure we don't try to delete target folder files if we have already wiped it
* missing return statement in zen workspace create command (#628)Dan Engelbrecht2025-11-031-0/+1
|
* allow --zen-cache-host option when using builds filestore (for testing) (#627)Dan Engelbrecht2025-11-031-0/+32
|
* added MacOS-native IterateCommandlineArgs (#624)Stefan Boberg2025-11-031-1/+15
| | | fixes issue where command line arguments to control tracing would not work on Mac
* Various fixes to address issues flagged by gcc / non-UE toolchain build (#621)Stefan Boberg2025-11-0141-166/+201
| | | | | | | | | | | | | | | | | | | | * gcc: avoid using memset on nontrivial struct * redundant `return std::move` * fixed various compilation issues flagged by gcc * fix issue in xmake.lua detecting whether we are building with the UE toolchain or not * add GCC ignore -Wundef (comment is inaccurate) * remove redundant std::move * don't catch exceptions by value * unreferenced variables * initialize "by the book" instead of memset * remove unused exception reference * add #include <cstring> to fix gcc build * explicitly poulate KeyValueMap by traversing input spans fixes gcc compilation * remove unreferenced variable * eliminate redundant `std::move` which gcc complains about * fix gcc compilation by including <cstring> * tag unreferenced variable to fix gcc compilation * fixes for various cases of naming members the same as their type
* fix use-after-free in TEST_CASE("compactcas.threadedinsert") (#620)v5.7.8-pre1Stefan Boberg2025-10-301-6/+8
|
* fix minor memory leak in command line parsing (#619)Stefan Boberg2025-10-291-0/+5
| | | when calling `getdelim` in a loop, it will return an allocated block of memory even if it is at EOF
* make sure OpenProcessCache is initialized before use (#618)Stefan Boberg2025-10-291-4/+4
| | | previously, a null reference would be passed into ProjectStore constructor
* fix for Latch race (#617)Stefan Boberg2025-10-292-29/+19
| | | | | | Because the counter is decreased in `CountDown()` and subsequently checked against zero to determine if the completion event should be set: `Latch::Wait` checks the counter against zero on entry and would exit early, before waiting on the completion event. This could then lead to the `Latch` instance being torn down before the `CountDown()` does a `Set()` which could then lead to unexpected and unwanted things happening.
* fix --zentrace=no compile errors (#616)Stefan Boberg2025-10-2814-29/+40
| | | | | | * make sure the correct `UE_WITH_TRACE` conditional is used to enable/disable support code as appropriate * fixed some accidental `int32`, `int64` et al usage, due to typedefs leaking through from trace header with this fix, it is now possible to build with `--zentrace=no` again
* optimize blockstore flush (#614)Dan Engelbrecht2025-10-273-35/+66
| | | | | * rework block store block flushing to only happen once at end of block write outside of locks * fix warning at startup if no gc.dlog file exists
* use already built lookup when verifying folder (#615)Dan Engelbrecht2025-10-271-3/+2
|
* optimize filecas write file (#613)Dan Engelbrecht2025-10-241-16/+10
| | | * try to move file into place before trying speculative remove of target file
* optimize blockstore filesize (#612)Dan Engelbrecht2025-10-241-1/+11
| | | * since we only ever append to a block store file we don't need to actually flush the position
* fix gc disk load graph (#610)Dan Engelbrecht2025-10-241-3/+3
| | | * make sure our gc disk load graph includes the latest measurement value
* move cpr in-tree (#605)Stefan Boberg2025-10-247-10/+14
| | | | | | * added cpr 1.10.5 in-tree to allow updates to vcpkg without breaking the build * added asio 1.29.0 in-tree to remove one more vcpkg dependency * bumped vcpkg to 2024.06.15 to address failure to build due to use of deprecated binaries in vcpkg (404 error: `https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-pkgconf-1~2.1.0-1-any.pkg.tar.zst` during build)
* fixed progress bar when scanning changed local files (#608)Dan Engelbrecht2025-10-242-23/+40
| | | * fixed progress bar when scanning changed local files
* gracefully handle broken gc dlog (#606)Dan Engelbrecht2025-10-241-0/+8
| | | * if gc.dlog is corrupt, remove and restart a new log
* refactor CasContainerStrategy::IterateOneBlock to make it more readable (#607)Dan Engelbrecht2025-10-243-92/+104
|
* in-tree spdlog (#602)Stefan Boberg2025-10-247-12/+11
| | | | move spdlog into the tree to remove dependency on vcpkg::spdlog, to allow diverging from the official version and evolve it to fit better with OTLP logging requirements
* if we are low on disk space, only run GC if it will remove any data (#603)Dan Engelbrecht2025-10-232-90/+160
| | | | * if we are low on disk space, only run GC if it will remove any data * make sure we don't treat bail of GC due to disk space as success causing 0 wait between GC passes
* add host discovery and zen cache support for oplog import (#601)Dan Engelbrecht2025-10-2317-332/+625
| | | * add host discovery and zen cache support for oplog import