aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Install cibuildwheelJoseph Hunkeler2026-02-131-0/+4
|
* Fix memory leak when reading a commentJoseph Hunkeler2026-02-131-0/+1
|
* Merge pull request #125 from jhunkeler/retry-downloadJoseph Hunkeler2026-02-127-49/+99
|\ | | | | Add a retry loop to download()
| * errmsg argument must be a valid pointerretry-downloadJoseph Hunkeler2026-02-121-3/+4
| | | | | | | | * Remove redundant status check already performed by HTTP_ERROR()
| * Use ssize_t to avoid rollover from strtol on user inputJoseph Hunkeler2026-02-121-3/+3
| |
| * Error message pointer must be validJoseph Hunkeler2026-02-121-1/+4
| |
| * Error message pointer must be validJoseph Hunkeler2026-02-121-1/+4
| |
| * Test against the tc struct's expected valueJoseph Hunkeler2026-02-121-2/+3
| |
| * Remove dead codeJoseph Hunkeler2026-02-121-1/+0
| |
| * Fix table formatJoseph Hunkeler2026-02-121-2/+2
| |
| * Document env vars in README:Joseph Hunkeler2026-02-121-9/+10
| | | | | | | | | | * STASIS_DOWNLOAD_RETRY_MAX * STASIS_DOWNLOAD_RETRY_SECONDS
| * CommentJoseph Hunkeler2026-02-121-0/+2
| |
| * Implement STASIS_DOWNLOAD_RETRY_SECONDSJoseph Hunkeler2026-02-121-0/+11
| |
| * Only set http_code on success. Return -1 otherise.Joseph Hunkeler2026-02-121-3/+4
| |
| * Change "ATTEMPT" to "RETRY" and emit vital informationJoseph Hunkeler2026-02-121-1/+1
| |
| * max_retries should use value of max_retries_strJoseph Hunkeler2026-02-121-1/+1
| |
| * Use snprintf for user_agent stringJoseph Hunkeler2026-02-121-1/+1
| |
| * Rename STASIS_DOWNLOAD_RETRIES to STASIS_DOWNLOAD_RETRY_MAXJoseph Hunkeler2026-02-121-1/+1
| |
| * Add a retry loop to downloadJoseph Hunkeler2026-02-112-30/+58
|/ | | | * Configurable with env var: STASIS_DOWNLOAD_RETRIES
* Merge pull request #124 from spacetelescope/hst-remove-nicmosJoseph Hunkeler2026-02-101-2/+1
|\ | | | | HST: Remove nictools from base.yml dependencies
| * HST: Remove nictools from base.yml dependenciesJoseph Hunkeler2026-02-101-2/+1
|/
* Merge pull request #121 from jhunkeler/timeout-in-test-blockJoseph Hunkeler2026-01-204-9/+29
|\ | | | | Timeout in test block
| * Update README.mdJoseph Hunkeler2026-01-181-9/+10
| | | | | | | | * Add timeout key to test block table
| * Allow per-test timeoutsJoseph Hunkeler2026-01-183-0/+19
| | | | | | | | * Test blocks without a timeout use the global timeout setting
* | Merge pull request #120 from jhunkeler/timeout-hours-bugJoseph Hunkeler2026-01-161-1/+1
|\ \ | |/ |/| Timeout time scale bug
| * Fixes number of seconds in an hour. Oops.timeout-hours-bugJoseph Hunkeler2026-01-161-1/+1
|/
* Merge pull request #117 from ↵HEADmasterJoseph Hunkeler2026-01-061-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 Hunkeler2026-01-0621-104/+1541
|\ \ | |/ |/| Semaphore
| * Update READMEsemaphoreJoseph Hunkeler2026-01-051-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
| |