aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #117 from ↵HEADmasterJoseph Hunkeler12 days1-1/+1
|\ | | | | | | | | spacetelescope/dependabot/github_actions/dot-github/workflows/actions-ee1c097272 Bump actions/checkout from 4.2.2 to 5.0.0 in /.github/workflows in the actions group
| * Bump actions/checkout in /.github/workflows in the actions groupdependabot[bot]2026-01-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bumps the actions group in /.github/workflows with 1 update: [actions/checkout](https://github.com/actions/checkout). Updates `actions/checkout` from 4.2.2 to 5.0.0 - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/11bd71901bbe5b1630ceea73d27597364c9af683...08c6903cd8c0fde910a37f88322edcfb5dd907a8) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: 5.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: actions ... Signed-off-by: dependabot[bot] <support@github.com>
* | Merge pull request #118 from jhunkeler/semaphoreJoseph Hunkeler12 days21-104/+1541
|\ \ | |/ |/| Semaphore
| * Update READMEsemaphoreJoseph Hunkeler13 days1-22/+24
| |
| * CI: Enable verbose testingJoseph Hunkeler2026-01-031-0/+1
| |
| * First use of STASIS_TEST_MSGJoseph Hunkeler2026-01-031-2/+2
| |
| * Add STASIS_TEST_MSG macroJoseph Hunkeler2026-01-031-0/+9
| |
| * Add TESTS_VERBOSE cmake optionJoseph Hunkeler2026-01-032-0/+13
| | | | | | | | * Defines STASIS_TEST_VERBOSE
| * Enable testsJoseph Hunkeler2026-01-031-7/+7
| |
| * Trying to fix a buffer overflow reported by the CIJoseph Hunkeler2026-01-034-16/+21
| | | | | | | | * Locally ASAN wasn't complaining.
| * Add testsJoseph Hunkeler2026-01-021-7/+47
| | | | | | | | | | * test_mp_timeout() * test_mp_seconds_to_human_readable()
| * Consolidate timer dataJoseph Hunkeler2026-01-022-22/+23
| | | | | | | | | | * Add MultiProcessingTimer struct * Replace raw timespec and double counters with MultiProcessingTimer(s)
| * Move utility functions to utils.cJoseph Hunkeler2026-01-025-48/+50
| |
| * Update multiprocessing to use semaphoreJoseph Hunkeler2025-12-316-69/+1233
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Introduce a small public domain timespec handling library * Renamed MultiProcessingTask members _now and _seconds to _interval_start and _interval_stop * Added interval_elapsed member * Change elapsed member from type int to double * mp_pool_free no longer tries to free semaphores with empty names * semaphore_init uses the correct default value of 1 instead of 2. The bug was related to calling semaphore_wait before the child() process started and semaphore_post after the parent exited. Now we post before the child to prevent a deadlock * Replace sleep with usleep in mp_pool_join. Set to 100ms. * Replace time() with clock_gettime() (helper functions created to prevent mistakes) * Stop recording time when the process ends. This fixes a bug where a process ends and up to 3 different elapsed times were reported to the user. * Progress output is now always available, not only when pid > 0 * Implement seconds_to_human_readable and hook it up to progress reporting calls. Breaking down thousands of seconds in my head after a long run was mentally exhausting. * Cleaned up some if-statements; removed else-if for clarity * Implemented a global timeout for pool tasks * Add register_semaphore() and semaphore_handle_exit() to aid with clean up. On Darwin a dangling shared memory file will lead to unexpected failures. These are destroyed via atexit().
| * Fix broken header guardJoseph Hunkeler2025-12-301-0/+1
| |
| * Implement task timeoutJoseph Hunkeler2025-12-308-0/+52
| | | | | | | | | | | | * Add argument: --task-timeout=1[s,m,h] * Timed out tasks are SIGKILL'd * If killing a task fails, the entire program ends
| * Fix undefined PSEMNAMLEN on DarwinJoseph Hunkeler2025-12-241-0/+5
| |
| * Remove blank lineJoseph Hunkeler2025-11-181-1/+0
| |
| * Add destroy to exampleJoseph Hunkeler2025-11-181-0/+2
| |
| * Enforce maximum buffer length of `name`Joseph Hunkeler2025-11-181-1/+8
| |
| * Remove debugging codeJoseph Hunkeler2025-11-171-4/+0
| |
| * Do not print error from within functionJoseph Hunkeler2025-11-171-1/+0
| |
| * Document semaphore usageJoseph Hunkeler2025-11-172-1/+43
| |
| * Integrate --no-task-logging CLI argumentJoseph Hunkeler2025-11-142-11/+27
| |
| * Add --no-task-logging CLI argumentJoseph Hunkeler2025-11-144-0/+5
| |
| * Decrease length of semaphore nameJoseph Hunkeler2025-11-141-1/+1
| |
| * Flush buffersJoseph Hunkeler2025-11-141-0/+3
| |
| * Integrate semaphoreJoseph Hunkeler2025-11-141-1/+3
| |
| * Integrate semaphoreJoseph Hunkeler2025-11-141-0/+11
| |
| * Integrate semaphoreJoseph Hunkeler2025-11-142-3/+19
| |
| * Add semaphore wrapperJoseph Hunkeler2025-11-143-0/+44
|/
* Merge pull request #119 from jhunkeler/indexer-buffer-overlowJoseph Hunkeler2025-11-1014-93/+285
|\ | | | | Indexer buffer overflow and leak(s)
| * The release list should use the full count of releases, not nelem_realindexer-buffer-overlowJoseph Hunkeler2025-11-101-1/+1
| |
| * Squelch unused argument warningsJoseph Hunkeler2025-11-062-0/+4
| |
| * Delivery context is constantJoseph Hunkeler2025-11-061-1/+1
| |
| * Duplicate testsJoseph Hunkeler2025-11-061-0/+17
| |
| * Duplicate jfrog_authJoseph Hunkeler2025-11-061-0/+11
| |
| * Move docker struct duplication down to jfrog struct duplicationJoseph Hunkeler2025-11-061-9/+9
| |
| * Delivery context is not modifiedJoseph Hunkeler2025-11-061-1/+1
| |
| * Fix buffer overflow while building command stringJoseph Hunkeler2025-11-061-2/+2
| |
| * Initialize character arrays to zeroJoseph Hunkeler2025-11-041-7/+3
| | | | | | | | * Remove memset calls
| * Fix System struct comment positionsJoseph Hunkeler2025-11-041-4/+2
| |
| * Duplicate upload contextJoseph Hunkeler2025-11-041-1/+43
| |
| * Fix incorrect formatter in SYSERROR callJoseph Hunkeler2025-11-041-1/+1
| |
| * Convert context manipulation from stack+heap to just heapJoseph Hunkeler2025-11-0410-76/+85
| |
| * Fix possible overflow in command stringJoseph Hunkeler2025-11-041-3/+3
| |
| * get_latest_deliveries() now optionally returns the count of elements in the ↵Joseph Hunkeler2025-11-042-3/+8
| | | | | | | | returned array of Delivery structs
| * Add delivery_duplicate() and strdup_maybe() helperJoseph Hunkeler2025-11-042-0/+110
|/ | | | | * The indexer needs to generate copies of the delivery context. The previous implementation (memcpy) left a lot to be desired. * strdup_maybe() might be useful elsewhere but for now I am leaving it static
* Merge pull request #116 from jhunkeler/breakdownJoseph Hunkeler2025-07-0814-353/+552
|\ | | | | Breakdown & Bug fixes
| * Increase lines_on_error from 100 to 1000breakdownJoseph Hunkeler2025-07-082-2/+2
| | | | | | | | * Debug messages are chatty