aboutsummaryrefslogtreecommitdiffstatshomepage
Commit message (Collapse)AuthorAge
* clang-format: don't break string literalsEgor Tensin2023-07-07
|
* test: add some basic command-line usage testsEgor Tensin2023-07-07
|
* support code coverage report generationEgor Tensin2023-07-07
|
* Makefile: add release targetEgor Tensin2023-07-07
|
* server: fix a possible leakEgor Tensin2023-07-07
|
* sqlite: minor refactoringEgor Tensin2023-07-07
|
* storage_sqlite: avoid races when inserting reposEgor Tensin2023-07-06
| | | | | Insert first, then query the ID. That way, it'll work even if there're other workers inserting new repos.
* workflows/ci: Valgrind tests should pass nowEgor Tensin2023-07-06
|
* cmake: fix Valgrind runs with Clang buildsEgor Tensin2023-07-06
|
* test: try mitigating port clashesEgor Tensin2023-07-06
| | | | Also, I don't think calling random.seed is necessary.
* test: add one more stress testEgor Tensin2023-07-06
|
* test: add a 2000-iteration basic repository testEgor Tensin2023-07-05
|
* worker: actually stay offlineEgor Tensin2023-07-05
| | | | | I don't know what I was thinking, but contrary to my intention, the worker stayed connected to the server all the time.
* tcp_server: minor refactoringEgor Tensin2023-07-05
|
* tcp_server: close client connectionsEgor Tensin2023-07-05
| | | | | I kinda forgot that I'm supposed to clean up client connections, and they immediately blew up in my face.
* command: dedupe the codeEgor Tensin2023-07-05
|
* tcp_server: keep track of client threadsEgor Tensin2023-07-05
| | | | | | | This is a major change, obviously; brought to me by Valgrind, which noticed that we don't actually clean up after cimple-client threads. For a more thorough explanation, please see the added comment in tcp_server.c.
* sanitize #include-sEgor Tensin2023-07-04
|
* worker: close the leftover descriptorEgor Tensin2023-07-04
| | | | | Thanks, Valgrind! As a note: if I think that Valgrind reports a false positive, chances are, it's not.
* move custom message parsing to a separate moduleEgor Tensin2023-07-04
|
* storage_sqlite: refactoringEgor Tensin2023-07-04
|
* sqlite: rename a columnEgor Tensin2023-07-04
|
* storage: mark completed runs as suchEgor Tensin2023-07-04
|
* storage: requeue old runs from storage on startupEgor Tensin2023-07-04
|
* tcp_server: always clean up connection descriptorsEgor Tensin2023-07-04
|
* sqlite: store new runs in SQLiteEgor Tensin2023-07-04
|
* storage_sqlite: refactoringEgor Tensin2023-07-04
|
* sqlite: add run status fieldEgor Tensin2023-07-04
|
* workflows/ci: comment on Valgrind testsEgor Tensin2023-07-04
|
* fix a compiler warningEgor Tensin2023-07-04
|
* docker: don't run Valgrind testsEgor Tensin2023-07-04
| | | | They fail; check again after Alpine 3.19 comes out.
* appease clang-formatEgor Tensin2023-07-04
|
* add a GitHub Actions workflowEgor Tensin2023-07-04
|
* Makefile: move the prelude to prelude.mkEgor Tensin2023-06-30
|
* use designated struct initializers moreEgor Tensin2023-06-30
|
* Makefile: add some bannersEgor Tensin2023-06-30
|
* show git hash with --versionEgor Tensin2023-06-30
| | | | Also, use cmake's configure_file to build string constants in.
* fix function names in error messagesEgor Tensin2023-06-30
|
* use __WNOTHREAD w/ waitpidEgor Tensin2023-06-30
| | | | | | | | | | I learned about this flag on my previous job; basically, it should be enabled by default IMO, so that the thread doesn't receive signals from other threads' children. Here, it doesn't matter too much, since we're waiting for a specific child. However, if we were to use waitpid(-1, ...), it would be essential to use this flag. Still, even here, it's good to have this on.
* test: split tests into different filesEgor Tensin2023-06-30
|
* test: shuffle files a bitEgor Tensin2023-06-29
| | | | | | | | | This should hopefully reduce clutter in the test/ directory. Side note: if I leave the __init__.py file in the new py/ directory, pytest fails with import errors. To make it work, I need to either delete it or keep the __init__.py file in both test/ and py/. No idea why.
* log: minor refactoringEgor Tensin2023-06-28
|
* add .pytest_cache to .gitignoreEgor Tensin2023-06-28
| | | | | It's added by Pytest automatically, but I like doing it explicitly better.
* test: better loggingEgor Tensin2023-06-28
|
* process: fix function name in logsEgor Tensin2023-06-28
|
* ci: environment array to execvpe must be NULL-terminatedEgor Tensin2023-06-28
| | | | Thanks, Valgrind.
* log: support logging levelsEgor Tensin2023-06-28
|
* test: skip ci.sh w/ ValgrindEgor Tensin2023-06-28
|
* valgrind: exit with an error after leak detectionEgor Tensin2023-06-28
| | | | I cannot believe this isn't default.
* file: readlink(2) doesn't null-terminateEgor Tensin2023-06-28
| | | | Thanks, valgrind.