# changelog

author: Tim Theisen <tim@cs.wisc.edu> - 23.0.12-1
changelog:
  - Remote condor_history queries now work the same as local queries
  - Improve error handling when submitting to a remote scheduler via ssh
  - Fix bug on Windows where condor_procd may crash when suspending a job
  - Fix Python binding crash when submitting a DAG which has empty lines


author: Tim Theisen <tim@cs.wisc.edu> - 23.8.1-1
changelog:
  - Add new condor-ap package to facilitate Access Point installation
  - HTCondor Docker images are now based on Alma Linux 9
  - HTCondor Docker images are now available for the arm64 CPU architecture
  - The user can now choose which submit method DAGMan will use
  - Can add custom attributes to the User ClassAd with condor_qusers -edit
  - Add use-projection option to condor_gangliad to reduce memory footprint
  - Fix bug where interactive submit does not work on cgroup v2 systems (EL9)


author: Tim Theisen <tim@cs.wisc.edu> - 23.0.14-1
changelog:
  - Docker and Container jobs run on EPs that match AP's CPU architecture
  - Fixed premature cleanup of credentials by the condor_credd
  - Fixed bug where a malformed SciToken could cause a condor_schedd crash
  - Fixed crash in condor_annex script
  - Fixed daemon crash after IDTOKEN request is approved by the collector


author: Tim Theisen <tim@cs.wisc.edu> - 23.9.6-1
changelog:
  - Add config knob to not have cgroups count kernel memory for jobs on EL9
  - Remove support for numeric unit suffixes (k,M,G) in ClassAd expressions
  - In submit files, request_disk & request_memory still accept unit suffixes
  - Hide GPUs not allocated to the job on cgroup v2 systems such as EL9
  - DAGMan can now produce credentials when using direct submission
  - Singularity jobs have a contained home directory when file transfer is on
  - Avoid using IPv6 link local addresses when resolving hostname to IP addr
  - New 'htcondor credential' command to aid in debugging


author: Tim Theisen <tim@cs.wisc.edu> - 23.0.15-1
changelog:
  - Fix bug where Docker universe jobs reported zero memory usage on EL9
  - Fix bug where Docker universe images would not be removed from EP cache
  - Fix bug where condor_watch_q could crash
  - Fix bug that could cause the file transfer hold reason to be truncated
  - Fix bug where a Windows job with a bad executable would not go on hold


author: Tim Theisen <tim@cs.wisc.edu> - 23.10.1-1
changelog:
  - Improvements to disk usage enforcement when using LVM
    - Can encrypt job sandboxes when using LVM
    - More precise tracking of disk usage when using LVM
    - Reduced disk usage tracking overhead
  - Improvements tracking CPU and memory usage with cgroup v2 (on EL9)
    - Don't count kernel cache pages against job's memory usage
    - Avoid rare inclusion of previous job's CPU and peak memory usage
  - HTCondor now re-checks DNS before re-connecting to a collector
  - HTCondor now writes out per job epoch history
  - HTCondor can encrypt network connections without requiring authentication
  - htcondor CLI can now show status for local server, AP, and CM
  - htcondor CLI can now display OAUTH2 credentials
  - Uses job's sandbox to convert image format for Singularity/Apptainer
  - Bug fix to not lose GPUs in Docker job on systemd reconfig
  - Bug fix for PID namespaces and condor_ssh_to_job on EL9


author: Tim Theisen <tim@cs.wisc.edu> - 23.0.17-1
changelog:
  - Bug fix for PID namespaces and condor_ssh_to_job on EL9
  - Augment condor_upgrade_check to find unit suffixes in ClassAd expressions


author: Tim Theisen <tim@cs.wisc.edu> - 24.0.1-1
changelog:
  - Improved tracking and enforcement of disk usage by using LVM
  - Enhancements to the htcondor CLI tool
  - cgroup v2 support for tracking and enforcement of CPU and memory usage
  - Leverage cgroups to hide GPUs not allocated to the job
  - DAGMan can now produce job credentials when using direct submit
  - New submit commands to aid in matching specific GPU requirements
  - New implementation of the Python bindings, htcondor2 and classad2
  - Improved default security configuration
  - Significant reduction in memory and CPU usage on the Central Manager
  - Support for GPUs using AMD's HIP 6 library
  - Fix bugs when -divide or -repeat was used in GPU detection
  - Proper error message and hold when Docker emits multi-line error message
  - Fix issue where an unresponsive libvirtd blocked an EP from starting up


author: Tim Theisen <tim@cs.wisc.edu> - 23.0.25-1
changelog:
  - Fix problems where parallel universe jobs could crash the condor_schedd
  - Prevent condor_starter crash when evicting job during input file transfer
  - condor_watch_q now properly displays job id ranges by using numeric sort


author: Tim Theisen <tim@cs.wisc.edu> - 23.10.25-1
changelog:
  - Fix bug where DAGMAN_MAX_JOBS_IDLE was being ignored
  - HTCondor tarballs now contain Pelican 7.16.5 and Apptainer 1.4.1


author: Tim Theisen <tim@cs.wisc.edu> - 24.0.8-1
changelog:
  - Fix 24.0.7 bug where cgroup v1 out-of-memory was not properly handled
  - HTCondor tarballs now contain Pelican 7.16.5 and Apptainer 1.4.1
    - Pelican 7.16.5 now includes end-to-end integrity checks for clients
  - Add Python wheel for Python 3.13, drop Python wheel for Python 3.7
  - Fix bug where DAGMAN_MAX_JOBS_IDLE was being ignored
  - Fix problems where parallel universe jobs could crash the condor_schedd
  - Prevent condor_starter crash when evicting job during input file transfer
  - condor_watch_q now properly displays job id ranges by using numeric sort


author: Tim Theisen <tim@cs.wisc.edu> - 23.0.26-1
changelog:
  - Fix ingestion of ads into Elasticsearch under very rare circumstances
  - DAGMan better handles being unable to write to a full filesystem
  - 'kill_sig' submit commands are now ignored on the Windows platform


author: Tim Theisen <tim@cs.wisc.edu> - 23.10.26-1
changelog:
  - Fix memory leak in the condor_schedd when using late materialization
  - Fix condor_master start up when file descriptor ulimit was huge
  - HTCondor tarballs now contain Pelican 7.17.0


author: Tim Theisen <tim@cs.wisc.edu> - 23.0.27-1
changelog:
  - Fix bug where condor_ssh_to_job failed when EP scratch path is too long
  - Fix incorrect time reported by htcondor status for long running jobs
  - Fix bug where .job.ad, .machine.ad files were missing when LVM is in use


author: Tim Theisen <tim@cs.wisc.edu> - 24.0.10-1
changelog:
  * Mon Jul 28 2025 Tim Theisen <tim@cs.wisc.edu> - 23.10.27-1
  - Fix bug where the vacate reason was not propagated back to the user
  - HTCondor tarballs now contain Pelican 7.17.2


author: Tim Theisen <tim@cs.wisc.edu> - 23.10.28-1
changelog:
  - Exit -code and -signal environment variables are now set for Docker jobs
  - Fix issue where ImageSize was over-reported on the Windows platform
  - HTCondor tarballs now contain Pelican 7.18.1 and Apptainer 1.4.2


author: Tim Theisen <tim@cs.wisc.edu> - 23.10.29-1
changelog:
  - Fix flocking to pools when there are intermittent network issues
  - HTCondor tarballs now contain Pelican 7.19.3


author: Tim Theisen <tim@cs.wisc.edu> - 24.0.12-1
changelog:
  - Update condor_upgrade_check to warn about v1 Python bindings retirement
  - Update condor_upgrade_check to look for old syntax job transforms
  - All changes in 23.10.29


author: Tim Theisen <tim@cs.wisc.edu> - 24.0.13-1
changelog:
  - Fix bug that could cause Python job submission to crash
  - HTCondor tarballs now contain Pelican 7.20.2


author: Tim Theisen <tim@cs.wisc.edu> - 24.0.14-1
changelog:
  - Fix problem running PyTorch jobs on multiple GPUs with
    newer versions of the CUDA library by providing long GPU IDs
    in the CUDA_VISIBLE_DEVICES environment variable


author: Tim Theisen <tim@cs.wisc.edu> - 24.0.15-1
changelog:
  - Fix bug where AP would fail to read job credential files
  - Fix bugs that could causes a crash in the authentication code
  - HTCondor tarballs now contain Pelican 7.21.1 and Apptainer 1.4.4


author: Tim Theisen <tim@cs.wisc.edu> - 24.0.16-1
changelog:
  - Fix floating point memory or disk request not fitting into some slots
  - Fix condor_rooster crash when unhibernate rank was not constant
  - Fix memory leak in the htcondor2.JobEventLog.events() Python method
  - condor_history -long now prints attributes in alphabetical order
  - Fix LVM setup to not timeout when creating a large volume
  - LVM creation no longer saves meta data which eventually fills the disk
  - HTCondor tarballs now contain Pelican 7.22.0 and Apptainer 1.4.5


author: Tim Theisen <tim@cs.wisc.edu> - 24.0.2-1
changelog:
  - Add STARTER_ALWAYS_HOLD_ON_OOM to minimize confusion about memory usage
  - Fix bug that caused condor_ssh_to_job sftp and scp modes to fail
  - Fix KeyboardIdle attribute in dynamic slots that could prevent job start
  - No longer signals the OAuth credmon when there is no work to do
  - Fix rare condor_schedd crash when a $$() macro could not be expanded
  - By default, put Docker jobs on hold when CPU architecture doesn't match


author: Tim Theisen <tim@cs.wisc.edu> - 23.0.18-1
changelog:
  - Proper error message and hold when Docker emits multi-line error message
  - The htcondor CLI now works on Windows


author: Tim Theisen <tim@cs.wisc.edu> - 23.0.19-1
changelog:
  - Numerous updates in memory tracking with cgroups
    - Fix bug in reporting peak memory
    - Made cgroup v1 and v2 memory tracking consistent with each other
    - Fix bug where cgroup v1 usage included disk cache pages
    - Fix bug where cgroup v1 jobs killed by OOM were not held
    - Polls cgroups for memory usage more often
    - Can configure to always hold jobs killed by OOM
  - Make condor_adstash work with OpenSearch Python Client v2.x
  - Avoid OAUTH credmon errors by only signaling it when necessary
  - Restore case insensitivity to 'condor_status -subsystem'
  - Fix rare condor_schedd crash when a $$() macro could not be expanded


author: Tim Theisen <tim@cs.wisc.edu> - 23.10.19-1
changelog:
  - Fix bug where jobs would match but not start when using KeyboardIdle
  - Fix bug when trying to avoid IPv6 link local addresses


author: Tim Theisen <tim@cs.wisc.edu> - 23.10.20-1
changelog:
  - Fix bug where STARTD_ENFORCE_DISK_LIMITS would excessively save metadata
  - Fix bug where container_service_names did not work
  - Fix rare startd crash when collector queries time out and DNS is slow


author: Tim Theisen <tim@cs.wisc.edu> - 24.0.4-1
changelog:
  - New arc_data_staging submit command to add DataStaging block to ARC ADL
  - Fix bug where the negotiator could crash when matching offline ads
  - Fix memory leak in SCHEDD_CRON script that produce standard output
  - Fix bug where the schedd could crash if cron script runs during shutdown


author: Tim Theisen <tim@cs.wisc.edu> - 23.0.21-1
changelog:
  - Fix memory leak caused by periodic evaluation of bad ClassAd expressions
  - Fixes for bugs affecting grid jobs


author: Tim Theisen <tim@cs.wisc.edu> - 24.0.5-1
changelog:
  * Thu Feb 27 2025 Tim Theisen <tim@cs.wisc.edu> - 23.10.21-1
  - Fix bug where chirp would not work in container jobs using Docker
  - HTCondor tarballs now contain Pelican 7.13.0


author: Derek Weitzel <dweitzel@unl.edu> - 2.3
changelog:
  - Fix tokens that are bigger than 1024 bytes
  - Fix the use of $BEARER_TOKEN when accessing data
  - Allow for multiple read operations, needed on el9


author: Mátyás Selmeci <matyas@cs.wisc.edu> - 5.7.0-1.1
changelog:
  - Update to 5.7.0 and merge OSG patches (SOFTWARE-5925)
      - Drop SOFTWARE-5800-pelican-url.patch (applied upstream)
      - Drop 2206-io-time-gstream-monitoring.patch (applied upstream)
      - Drop SOFTWARE-5870-only-if-cached.patch (applied upstream)
      - Drop 2262-fix-timing-on-throttle-plugin.patch (applied upstream)
      - Drop 2269-defer-or-disable-tls-client-auth-*.patch (applied upstream)


author: Mátyás Selmeci <matyas@cs.wisc.edu> - 5.7.0-1.5
changelog:
  - Bump to rebuild for aarch64
  - Don't make the generated documentation (i.e., xrootd-doc subpackage) noarch
    because the generation results are different based on the arch of the builder.


author: Mátyás Selmeci <matyas@cs.wisc.edu> - 5.7.0-1.7
changelog:
  - Add bbockelm-3-oss-statistics.patch (SOFTWARE-5967)
  - Add bbockelm-4-defer-client-auth (as 3 patches) (SOFTWARE-5968);
      this adds libXrdOssStats-5.so to xrootd-server-libs


author: Matt Westphall <westphall@wisc.edu> - 5.7.1-1.3
changelog:
  * Thu Oct 03 2024 Mátyás Selmeci <matyas@cs.wisc.edu> - 5.7.1-1.2
  - Update 2300-stat-call-reduction.patch (SOFTWARE-6003)
  - Add 2348-cache-age-logic.patch (SOFTWARE-6003)


author: Mátyás Selmeci <matyas@cs.wisc.edu> - 5.7.1-1.2
changelog:
  - Update 2300-stat-call-reduction.patch (SOFTWARE-6003)
  - Add 2348-cache-age-logic.patch (SOFTWARE-6003)


author: Mátyás Selmeci <matyas@cs.wisc.edu> - 5.7.2-1.1
changelog:
  - Update to 5.7.2 and drop upstreamed patches (SOFTWARE-6036)
    - Drop 2300-stat-call-reduction.patch
    - Update 2348-cache-age-logic.patch
      (replace with https://github.com/bbockelm/xrootd/commit/2160a23febe1782cc3590a473209f0e74f965084)
    - Drop 2357-fix-errSocketTimeout-loop.patch
    - Drop 2363-reset-runstatus-in-redrive-thread.patch


author: Mátyás Selmeci <mselmeci@wisc.edu> - 5.7.2-1.3
changelog:
  - Use patches from PelicanPlatform/xrootd (SOFTWARE-6063)
      - Replace 1868-env-hostname-override.patch with 0001-Allow-hostname-used-by-XRootD-to-be-overridden-by-en.patch (PelicanPlatform/xrootd #1)
      - Replace 2348-cache-age-logic.patch with 0002-XrdHttp-determines-the-presence-of-the-Age-header-in.patch (PelicanPlatform/xrootd #2)
      - Replace 2395-cinfo-read-fd-leak.patch with 0003-Fix-FD-leak-when-reading-file-size-from-cinfo-file-i.patch (PelicanPlatform/xrootd #3)
      - Replace 2269-defer-client-auth.patch with 0004-Defer-client-TLS-auth-until-after-HTTP-parsing.patch (PelicanPlatform/xrootd #4)
      - Replace bbockelm-3-oss-statistics.patch with 0005-Add-new-filesystem-load-counter-plugin.patch (PelicanPlatform/xrootd #5)
      - Add 0006-XrdSciTokens-Handle-multiple-authorization-token-set.patch (PelicanPlatform/xrootd #6)
      - Add 0007-XrdHttp-Add-http.staticheader.patch (PelicanPlatform/xrootd #7)
      - Add 0008-XrdHttp-Set-oss.asize-if-object-size-is-known.patch (PelicanPlatform/xrootd #8)


author: Mátyás Selmeci <mselmeci@wisc.edu> - 5.7.2-1.4
changelog:
  - Two more patches from PelicanPlatform/xrootd (SOFTWARE-6063)
      - Add 0010-do_WriteSpan-Add-written-bytes-in-file-statistics.patch (PelicanPlatform/xrootd #10)
      - Add 0011-Xrd-Fix-MacOS-poller.patch (PelicanPlatform/xrootd #11)


author: Mátyás Selmeci <mselmeci@wisc.edu> - 5.7.2-1.4.purge
changelog:
  - Add purge plugin patch 0009-Second-rebase-of-alja-purge-main-rb1-onto-master-5.7.patch
      (PelicanPlatform/xrootd #9)


author: Mátyás Selmeci <mselmeci@wisc.edu> - 5.7.3-1.1
changelog:
  - Update to XRootD 5.7.3 (SOFTWARE-6071)
  - Drop upstreamed patches:
      - 0003-Fix-FD-leak-when-reading-file-size-from-cinfo-file-i~a219487.patch
      - 0008-XrdHttp-Set-oss.asize-if-object-size-is-known~d710312.patch
      - 0010-do_WriteSpan-Add-written-bytes-in-file-statistics~98a22ba.patch
      - 0011-Xrd-Fix-MacOS-poller~79a5439.patch
  - Replace patches with updated versions:
      - 0004-Defer-client-TLS-auth-until-after-HTTP-parsing~323a16b.patch
          -> 0003-XrdTls-Allow-disabling-of-X.509-client-auth.patch~18e1c81.patch
      - 0005-Add-new-filesystem-load-counter-plugin~3c1be23.patch
          -> 0004-Add-new-filesystem-load-counter-plugin.patch~3c1be23.patch
      - 0006-XrdSciTokens-Handle-multiple-authorization-token-set~7433116.patch
          -> 0005-XrdSciTokens-Handle-multiple-authorization-token-set.patch~a33ca13.patch
      - 0007-XrdHttp-Add-http.staticheader~2175ae2.patch
          -> 0006-XrdHttp-Add-http.staticheader.patch~5c6ee05.patch


author: Mátyás Selmeci <mselmeci@wisc.edu> - 5.7.3-1.2
changelog:
  - Fix patch file names
  - Add:
      - 0007-XrdPfc-Check-for-a-null-pointer-dereference~121f60b.patch
      - 0008-XrdHttp-Undo-HTTP-PUT-response-code-change~956b9fa.patch


author: Mátyás Selmeci <mselmeci@wisc.edu> - 5.7.3-1.5
changelog:
  - Add:
      - 0010-Fix-gstream-configuration-processing~bece0de.patch
  - Re-add (with update):
      - 0011-Xrd-Fix-MacOS-poller~9704d2a.patch


author: Mátyás Selmeci <mselmeci@wisc.edu> - 5.7.3-1.5
changelog:
  - Add:
      - 0010-Fix-gstream-configuration-processing~bece0de.patch
      - 0012-Temporary-workaround-for-segfault-noted-in-upstream~3b485c0.patch
  - Re-add (with update):
      - 0011-Xrd-Fix-MacOS-poller~9704d2a.patch


author: Mátyás Selmeci <mselmeci@wisc.edu> - 5.8.0-1.1
changelog:
  - Update to 5.8.0 (SOFTWARE-6114)
      - Patches added:
          - 0005-Since-the-XrdPss-did-not-implement-the-auto-stat-pro~4c5e0ae.patch
          - 0006-XrdPss-Fix-proxy-when-using-tokens-and-crc32c~328ae18.patch
          - 0007-XrdHttp-Fix-HTTP-protocol-errors-on-failure~4fb2221.patch
      - Patches kept:
          - 0003-XrdTls-Allow-disabling-of-X.509-client-auth~18e1c81.patch -> 0002-XrdTls-Allow-disabling-of-X.509-client-auth~18e1c81.patch
          - 0008-XrdHttp-Undo-HTTP-PUT-response-code-change~956b9fa.patch -> 0004-XrdHttp-Undo-HTTP-PUT-response-code-change~956b9fa.patch
      - Patches updated:
          - 0001-Allow-hostname-used-by-XRootD-to-be-overridden-by-en~e13587e.patch -> 0001-Allow-hostname-used-by-XRootD-to-be-overridden-by-en~7c119b0.patch
          - 0005-XrdSciTokens-Handle-multiple-authorization-token-set~a33ca13.patch -> 0003-XrdSciTokens-Handle-multiple-authorization-token-set~ec1eb0c.patch
      - Patches dropped:
          - 0002-XrdHttp-determines-the-presence-of-the-Age-header-in~092c7a5.patch
          - 0004-Add-new-filesystem-load-counter-plugin~3c1be23.patch
          - 0006-XrdHttp-Add-http.staticheader~5c6ee05.patch
          - 0007-XrdPfc-Check-for-a-null-pointer-dereference~121f60b.patch
          - 0009-Add-ResourceMonitor-and-PurgePlugin~f34a39d.patch
          - 0010-Fix-gstream-configuration-processing~bece0de.patch
          - 0011-Xrd-Fix-MacOS-poller~9704d2a.patch
          - 0012-Temporary-workaround-for-segfault-noted-in-upstream~3b485c0.patch


author: Mátyás Selmeci <mselmeci@wisc.edu> - 5.8.1-1.1
changelog:
  - Update to 5.8.1 (SOFTWARE-6114)
      - Patches added:
          - 0006-XrdPosix-Map-operation-timeouts-to-ETIME~9480232.patch
          - 0007-XrdSciTokens-Automatically-add-WLCG-audiences-upon-r~92c168c.patch
      - Patches kept:
          - 0007-XrdHttp-Fix-HTTP-protocol-errors-on-failure~4fb2221.patch -> 0005-XrdHttp-Fix-HTTP-protocol-errors-on-failure~4fb2221.patch
      - Patches dropped:
          - 0005-Since-the-XrdPss-did-not-implement-the-auto-stat-pro~4c5e0ae.patch
          - 0006-XrdPss-Fix-proxy-when-using-tokens-and-crc32c~328ae18.patch


author: Mátyás Selmeci <mselmeci@wisc.edu> - 5.8.1-1.2
changelog:
  - Comment out 0007-XrdSciTokens-Automatically-add-WLCG-audiences-upon-r~92c168c.patch
  - Add 0008-Include-additional-XrdPfc-headers.patch


author: Mátyás Selmeci <mselmeci@wisc.edu> - 5.8.1-1.5
changelog:
  - Patches added:
      - 0008-Tweak-throttle-manager-after-large-scale-testing~273c58e.patch
      - 0009-Modify-XrdThrottle-to-be-an-OSS-plugin~580a3f1.patch
      - 0010-CMake-changes-for-XrdThrottle-overhaul~fe965e8.patch
  - Patches dropped:
      - 0007-XrdSciTokens-Automatically-add-WLCG-audiences-upon-r~92c168c.patch
  - Patches kept:
      - 0008-Re-engineer-concurrency-limits-for-throttles~0ef6dbc.patch -> 0007-Re-engineer-concurrency-limits-for-throttles~0ef6dbc.patch


author: Mátyás Selmeci <mselmeci@wisc.edu> - 5.8.2-1.1
changelog:
  - Update to XRootD 5.8.2 (SOFTWARE-6151)
      - Patches added:
          - 0008-XRootD-s-xml-response-for-PROPFIND-will-now-include~aacf631.patch
      - Patches kept:
          - 0001-Allow-hostname-used-by-XRootD-to-be-overridden-by-en~7c119b0.patch
          - 0002-XrdTls-Allow-disabling-of-X.509-client-auth~18e1c81.patch
          - 0003-XrdSciTokens-Handle-multiple-authorization-token-set~ec1eb0c.patch -> 0003-XrdSciTokens-Handle-multiple-authorization-token-set~b82ddc3.patch
          - 0004-XrdHttp-Undo-HTTP-PUT-response-code-change~956b9fa.patch
          - 0005-XrdHttp-Fix-HTTP-protocol-errors-on-failure~4fb2221.patch
          - 0007-Re-engineer-concurrency-limits-for-throttles~0ef6dbc.patch -> 0006-Re-engineer-concurrency-limits-for-throttles~39fea57.patch
          - 0009-Modify-XrdThrottle-to-be-an-OSS-plugin~580a3f1.patch -> 0007-Modify-XrdThrottle-to-be-an-OSS-plugin~921fef5.patch
      - Patches dropped:
          - 0006-XrdPosix-Map-operation-timeouts-to-ETIME~9480232.patch
          - 0008-Tweak-throttle-manager-after-large-scale-testing~273c58e.patch
          - 0010-CMake-changes-for-XrdThrottle-overhaul~fe965e8.patch


author: Mátyás Selmeci <mselmeci@wisc.edu> - 5.8.3-1.1
changelog:
  - Update to XRootD 5.8.3 (SOFTWARE-6164)
      - Patches added:
          - 0009-Avoid-reference-beyond-end-of-table~80b938c.patch
          - 0010-XrdPfc-Ensure-a-reference-to-the-file-is-kept-when-s~aa225e2.patch
      - Patches kept:
          - 0001-Allow-hostname-used-by-XRootD-to-be-overridden-by-en~7c119b0.patch
          - 0002-XrdTls-Allow-disabling-of-X.509-client-auth~18e1c81.patch
          - 0003-XrdSciTokens-Handle-multiple-authorization-token-set~b82ddc3.patch
          - 0004-XrdHttp-Undo-HTTP-PUT-response-code-change~956b9fa.patch -> 0004-XrdHttp-Undo-HTTP-PUT-response-code-change~43ed40b.patch
          - 0006-Re-engineer-concurrency-limits-for-throttles~39fea57.patch
          - 0007-Modify-XrdThrottle-to-be-an-OSS-plugin~921fef5.patch
          - 0008-XRootD-s-xml-response-for-PROPFIND-will-now-include~aacf631.patch
      - Patches dropped:
          - 0005-XrdHttp-Fix-HTTP-protocol-errors-on-failure~4fb2221.patch
          - 0009-Fix-life-time-of-a-variable-used-for-signaling-that~286b8ca.patch
          - 0010-Correct-concurrency-and-state-tracking-around-Redriv~86d48f1.patch
          - 0011-Fix-race-conditions-around-use-of-ecMsg~803dc26.patch


author: Mátyás Selmeci <mselmeci@wisc.edu> - 5.8.4-1.1
changelog:
  - Update to XRootD 5.8.4 (SOFTWARE-6187)
      - Patches added:
      - Patches kept:
          - 0001-Allow-hostname-used-by-XRootD-to-be-overridden-by-en~7c119b0.patch -> 0001-1-Allow-hostname-used-by-XRootD-to-be-overridden-by~7c119b0.patch
          - 0002-XrdTls-Allow-disabling-of-X.509-client-auth~18e1c81.patch -> 0002-4-XrdTls-Allow-disabling-of-X.509-client-auth~18e1c81.patch
          - 0003-XrdSciTokens-Handle-multiple-authorization-token-set~b82ddc3.patch -> 0003-6-XrdSciTokens-Handle-multiple-authorization-token-s~b82ddc3.patch
          - 0004-XrdHttp-Undo-HTTP-PUT-response-code-change~43ed40b.patch -> 0004-14-XrdHttp-Undo-HTTP-PUT-response-code-change~43ed40b.patch
          - 0006-Re-engineer-concurrency-limits-for-throttles~39fea57.patch -> 0005-23-Re-engineer-concurrency-limits-for-throttles~39fea57.patch
          - 0007-Modify-XrdThrottle-to-be-an-OSS-plugin~921fef5.patch -> 0006-23-Modify-XrdThrottle-to-be-an-OSS-plugin~921fef5.patch
          - 0008-XRootD-s-xml-response-for-PROPFIND-will-now-include~aacf631.patch -> 0007-25-XRootD-s-xml-response-for-PROPFIND-will-now-inclu~aacf631.patch
          - 0011-Enable-write-through-mode-for-cache~330eac1.patch -> 0008-32-Enable-write-through-mode-for-cache~330eac1.patch
      - Patches dropped:
          - 0009-Avoid-reference-beyond-end-of-table~80b938c.patch
          - 0010-XrdPfc-Ensure-a-reference-to-the-file-is-kept-when-s~aa225e2.patch


author: Mátyás Selmeci <mselmeci@wisc.edu> - 5.8.4-1.3
changelog:
  - Add patches (SOFTWARE-6202):
      - 0009-34-Add-S3-as-a-permitted-proxy-protocol~b36d9b7.patch
      - 0010-36-Do-a-clean-TLS-shutdown-for-HTTPS~cdc53fe.patch
      - 0011-35-Make-HTTP-s-maximum-open-delay-configurable~3496b32.patch


author: Matt Westphall <westphall@wisc.edu> - 5.9.0-1.1
changelog:
  - Update to XRootD 5.8.4 (SOFTWARE-6187)
      - Patches added:
      - Patches kept:
          - 0001-1-Allow-hostname-used-by-XRootD-to-be-overridden-by~7c119b0.patch -> 0001-1-Allow-hostname-used-by-XRootD-to-be-overridden-by-~8d1252d.patch
          - 0003-6-XrdSciTokens-Handle-multiple-authorization-token-s~b82ddc3.patch -> 0002-6-XrdSciTokens-Handle-multiple-authorization-token-s~a0751f6.patch
          - 0004-14-XrdHttp-Undo-HTTP-PUT-response-code-change~43ed40b.patch -> 0003-14-XrdHttp-Undo-HTTP-PUT-response-code-change~43ed40b.patch
          - 0007-25-XRootD-s-xml-response-for-PROPFIND-will-now-inclu~aacf631.patch -> 0004-25-XRootD-s-xml-response-for-PROPFIND-will-now-inclu~aacf631.patch
          - 0008-32-Enable-write-through-mode-for-cache~330eac1.patch -> 0005-32-Enable-write-through-mode-for-cache~330eac1.patch
          - 0009-34-Add-S3-as-a-permitted-proxy-protocol~b36d9b7.patch -> 0006-34-Add-S3-as-a-permitted-proxy-protocol~b36d9b7.patch
          - 0012-37-Add-TPC-worker-pool~70720be.patch -> 0007-37-Add-TPC-worker-pool~0bcba8c.patch
      - Patches dropped:
          - 0002-4-XrdTls-Allow-disabling-of-X.509-client-auth~18e1c81.patch
          - 0005-23-Re-engineer-concurrency-limits-for-throttles~39fea57.patch
          - 0006-23-Modify-XrdThrottle-to-be-an-OSS-plugin~921fef5.patch
          - 0010-36-Do-a-clean-TLS-shutdown-for-HTTPS~cdc53fe.patch
          - 0011-35-Make-HTTP-s-maximum-open-delay-configurable~3496b32.patch


author: Matt Westphall <westphall@wisc.edu> - 5.9.0-1.1
changelog:
  - Update to XRootD 5.9.0 (SOFTWARE-6187)
      - Patches added:
      - Patches kept:
          - 0001-1-Allow-hostname-used-by-XRootD-to-be-overridden-by~7c119b0.patch -> 0001-1-Allow-hostname-used-by-XRootD-to-be-overridden-by-~8d1252d.patch
          - 0003-6-XrdSciTokens-Handle-multiple-authorization-token-s~b82ddc3.patch -> 0002-6-XrdSciTokens-Handle-multiple-authorization-token-s~a0751f6.patch
          - 0004-14-XrdHttp-Undo-HTTP-PUT-response-code-change~43ed40b.patch -> 0003-14-XrdHttp-Undo-HTTP-PUT-response-code-change~43ed40b.patch
          - 0007-25-XRootD-s-xml-response-for-PROPFIND-will-now-inclu~aacf631.patch -> 0004-25-XRootD-s-xml-response-for-PROPFIND-will-now-inclu~aacf631.patch
          - 0008-32-Enable-write-through-mode-for-cache~330eac1.patch -> 0005-32-Enable-write-through-mode-for-cache~330eac1.patch
          - 0009-34-Add-S3-as-a-permitted-proxy-protocol~b36d9b7.patch -> 0006-34-Add-S3-as-a-permitted-proxy-protocol~b36d9b7.patch
          - 0012-37-Add-TPC-worker-pool~70720be.patch -> 0007-37-Add-TPC-worker-pool~0bcba8c.patch
      - Patches dropped:
          - 0002-4-XrdTls-Allow-disabling-of-X.509-client-auth~18e1c81.patch
          - 0005-23-Re-engineer-concurrency-limits-for-throttles~39fea57.patch
          - 0006-23-Modify-XrdThrottle-to-be-an-OSS-plugin~921fef5.patch
          - 0010-36-Do-a-clean-TLS-shutdown-for-HTTPS~cdc53fe.patch
          - 0011-35-Make-HTTP-s-maximum-open-delay-configurable~3496b32.patch


author: Mátyás Selmeci <mselmeci@wisc.edu> - 5.9.1-1.1
changelog:
  - Update to XRootD 5.9.1 (SOFTWARE-6260)
      - Patches added:
      - Patches kept:
          - 0001-1-Allow-hostname-used-by-XRootD-to-be-overridden-by-~8d1252d.patch -> 0001-1-Allow-hostname-used-by-XRootD-to-be-overridden-by~e13587e.patch
          - 0002-6-XrdSciTokens-Handle-multiple-authorization-token-s~a0751f6.patch -> 0002-6-XrdSciTokens-Handle-multiple-authorization-token-s~d8842b6.patch
          - 0003-14-XrdHttp-Undo-HTTP-PUT-response-code-change~43ed40b.patch -> 0003-14-XrdHttp-Undo-HTTP-PUT-response-code-change~73ddc83.patch
          - 0004-25-XRootD-s-xml-response-for-PROPFIND-will-now-inclu~aacf631.patch
          - 0005-32-Enable-write-through-mode-for-cache~330eac1.patch
          - 0006-34-Add-S3-as-a-permitted-proxy-protocol~b36d9b7.patch
          - 0007-37-Add-TPC-worker-pool~0bcba8c.patch -> 0007-37-Add-TPC-worker-pool~31dd3de.patch
      - Patches dropped:


author: Mátyás Selmeci <mselmeci@wisc.edu> - 5.9.1-1.3
changelog:
  - Add 0009-42-Full-pkcs11-integration~d92e458.patch (SOFTWARE-6280)
  - Add 0010-45-Revert-XrdHttp-Undo-HTTP-PUT-response-code-change~6d22469.patch (SOFTWARE-6280)


author: Brian Bockelman <bbockelman@morgridge.org> - 0.9.2-1
changelog:
  - Add support for the `pelican://` protocol, allowing XCache to consume
    the federation metadata directly.


author: Brian Bockelman <bbockelman@morgridge.org> - 0.9.3-1
changelog:
  - Add support for requesting reversed connections from the Pelican connection broker.
  - Plugin no longer drops query parameters when `pelican://` is used; fixes
    issues with missing authorization from URL.


author: Brian Bockelman <bbockelman@morgridge.org> - 1.0.0-1
changelog:
  - Switch to using PROPFIND for stat, preventing opening a directory as a file
  - Implement directory listings at the cache
  - Cache the results of the director response, skipping director lookup when not needed
  - Forward pelican.timeout header to the remote origin
  - Fix a bug that invoked a callback twice, potentially segfaulting the process
  - Add unit tests to the project


author: Brian Bockelman <bbockelman@morgridge.org> - 1.1.0-1
changelog:
  - Add support for Write and VectorRead operations
  - Add support for checksum query and caching
  - Add support for COPY verb to enable third-party-copy
  - Fix the returned stat flags
  - Fix uninitialized read when using the broker


author: Brian Bockelman <bbockelman@morgridge.org> - 1.2.0-1
changelog:
  - Add progress- and stall-based timeout checks.
  - Add timeout check while requests are queued.
  - Increase the default number of workers to 8.
  - Add ability to tune more parameters via environment variables.
  - Fix bug where uploads fail for files that don't exist
  - Fix thread-safety issues which could cause a libcurl deadlock.


author: Brian Bockelman <bbockelman@morgridge.org> 1.2.2-1
changelog:
  - Fix invocation of `Fail` in the callback which could lead to a use-after-free
    of the callback object.


author: Brian Bockelman <bbockelman@morgridge.org> 1.3.0-1
changelog:
  - Split code in half, creating a pure-HTTP(S) plugin which only invokes
    libcurl and a Pelican-only plugin that depends on the HTTP one.
  - Add support for delete operations.
  - Add support for creating directories.
  - Add support for cache-control and Etag queries.
  - Implement a prefetch scheme, removing the need for round trips for
    each operation if you are simply reading the whole file.


author: Brian Bockelman <bbockelman@morgridge.org> 1.4.0-1
changelog:
  - Add experimental support for s3://-style URLs.
  - Delay initialization of thread pools until the first file is opened.
  - Cleanly shutdown helper threads when plugin is unloaded, reducing
    the chance of a segfault when a CLI or unit test is shutting down.
  - Fix a few minor memory leaks and race conditions uncovered by
    AddressSanitizer.


author: Brian Bockelman <bbockelman@morgridge.org> 1.5.2-1
changelog:
  - Add infrastructure for automating GitHub releases from a pushed tag
  - Automatically build as part of a release.


author: Brian Bockelman <bbockelman@morgridge.org> 1.5.5-1
changelog:
  - Fix a bug that could trigger a deadlock when a busy plugin is unable
    to continue an ongoing prefetch request.


author: Brian Bockelman <bbockelman@morgridge.org> 1.5.6-1
changelog:
  - Fix a bug that could cause the client to stop processing new requests
    if a significant number (approximately 16k) of operations have
    expired since process startup.


author: Mátyás Selmeci <matyas@cs.wisc.edu> - 2.1.3-1
changelog:
  - Fail plugin initialization if we can't get the OSS (SOFTWARE-5388)
  - If user cannot be mapped to uid, continue as anonymous
  - Change from named daemon to exec


