summaryrefslogtreecommitdiff
path: root/src/other_tools/utils
AgeCommit message (Collapse)Author
2024-03-08CurlURLHandle: Add GetHostname routineOliver Reiche
2024-03-08just-mr: Report fetch URLs on debug levelOliver Reiche
2024-03-05Add data structure for foreign-file rootsKlaus Aehlig
2024-02-28Deduplicate parsing of archive descriptionsKlaus Aehlig
2023-12-19just-mr setup: Add missing reporting of failed hostname replacementPaul Cristian Sarbu
2023-12-01just-mr archive: Report all tried remotes if fetch failsPaul Cristian Sarbu
2023-11-14just-mr archives fetch: Add logic for local mirrors and preferred hostnamesPaul Cristian Sarbu
2023-11-14curl_url_handle: Add method to replace the hostname of a URLPaul Cristian Sarbu
Also adds a section in the curl_url test suite.
2023-11-14curl_url_handle: Allow permissive parsing and URL extraction to be non-fatalPaul Cristian Sarbu
2023-11-14curl_url_handle: Improve documentationPaul Cristian Sarbu
2023-11-14just-mr: Add 'mirrors' field to archive-like repositoriesPaul Cristian Sarbu
Also extends 'distdir' repositories logic accordingly.
2023-11-14curl_easy_handle: Allow non-fatal logging of errors in curl operationsPaul Cristian Sarbu
In order to allow non-fatal retries of fetches, be it from same remote or not (e.g., mirrors), the handle now reports with a caller-defined LogLevel.
2023-11-02Move content archive helper functions in own libraryPaul Cristian Sarbu
2023-11-02ArchiveOps: Move libarchive utilities outside other_toolsPaul Cristian Sarbu
This way they can be used by 'just serve'.
2023-10-16curl_easy_handle: Ensure we report a fail on HTTP codes >=400Paul Cristian Sarbu
...which signal either cient- or server-side failures. This ensures we exit with a failed network fetch early in cases where it is clear we won't receive useful data.
2023-08-14just-mr archives: Add 7zip support via autodetection optionPaul Cristian Sarbu
Similarly to tarballs, an autodetection option for zip-like archives is added to enable a unified handling of both traditional zip and 7zip formats. Thus, for "zip" archives just-mr uses now this autodetection option.
2023-08-14ArchiveOps: Add handling of 7zip archivesPaul Cristian Sarbu
Also updates the archive usage tests accordingly.
2023-08-14ArchiveOps: Allow lzip and lzma compression filters for tarballsPaul Cristian Sarbu
These are provided by the recently added liblzma external dependency.
2023-08-14ArchiveOps: Add proper autodetection option for tarballsPaul Cristian Sarbu
We shouldn't exclude the possibility of receiving uncompressed tarballs as repositories in just-mr. Therefore, we introduce an explicit type that performs the autodetection (default behaviour in just-mr). This is done to also be more in line with our implementation which allows the granular handling of various archive types (currently used only for testing purposes).
2023-08-14ArchiveOps: reduce verbosity in archive type enumPaul Cristian Sarbu
2023-06-20ArchiveOps: Support unpacking tar.xz archivesOliver Reiche
2023-04-26imports: Switch to Microsoft GSL implementationOliver Reiche
... with two minor code base changes compared to previous use of gsl-lite: - dag.hpp: ActionNode::Ptr and ArtifactNode::Ptr are not wrapped in gsl::not_null<> anymore, due to lack of support for wrapping std::unique_ptr<>. More specifically, the move constructor is missing, rendering it impossible to use std::vector<>::emplace_back(). - utils/cpp/gsl.hpp: New header file added to implement the macros ExpectsAudit() and EnsureAudit(), asserts running only in debug builds, which were available in gsl-lite but are missing in MS GSL.
2023-03-23curl_easy_handle: fix unused return value...Alberto Sartori
...depending on the compiler and/or c++lib version, std::fread may warn about unused return value triggering a compile error, due to our compile flags.
2023-03-14CurlUrlHandle: Fix memory leak in no_proxy string matching methodPaul Cristian Sarbu
2023-03-08curl_easy_handle: Add logic for handling user SSL settingsPaul Cristian Sarbu
2023-03-03utils: Add utility class for handling URLsPaul Cristian Sarbu
It uses libcurl to parse URLs. The current version contains methods needed for correctly handling the matching gitconfig entries and the no_proxy-type envariable patterns.
2023-02-20Print libcurl debug output in just-mr only in case of an error or in case of ↵Sascha Roloff
tracing
2023-02-20Style fixes in just-mrSascha Roloff
2023-02-17structure cleanup: move libcurl utilities to other_tools...Paul Cristian Sarbu
...in order to not include unwanted dependencies in just proper. As the whole other_tools folder is meant to be excluded from bootstrapping, also remove the bootstrap guards.
2023-02-17structure cleanup: move libarchive utilities to other_tools...Paul Cristian Sarbu
...in order to not include unwanted dependencies in just proper. As the whole other_tools folder is meant to be excluded from bootstrapping, also remove the bootstrap guards.