This is an automated email from the ASF dual-hosted git repository.
bneradt pushed a change to branch 11-Dev
in repository https://gitbox.apache.org/repos/asf/trafficserver.git
from 490fa6fb8f Merge latest master into 11-Dev
add 1305a1c6a5 Add parallel autest runner for faster test execution
(#12867)
add e069475210 Fix autest compatibility with Fedora 43 / Python 3.14
(#12857)
add 6669251085 Add support for more PP fields (#12864)
add 948586f87f hrw4u: Allow negation with the 'in' keyword (#12871)
add 9a450eb7e5 parallel autests: print failure output (#12877)
add 1b6847fd67 Fix flaky filter_body test (#12882)
add 2ffe0ee763 Fix log_retention test: use correct test run variable
(#12884)
add 6112a78356 NetAcceptAction::cancel() use-after-free fix: part 2
(#12874)
add 8def184a6f Check Curl support for TLS 1.0 and 1.1 (#12887)
add 7cfb59b0d8 Add AuTest and Doc for DELETE method (#12883)
add 0fb268b07e hrw4u: Allows bulk compilation of many files (faster)
(#12865)
add 7182d468ba First cut at a CoPilot review agent (#12889)
add 2d41d0e018 Lua plugin support for connection exempt list (#12849)
add 00604e1287 Update gitignore for codex files (#12893)
add a1ac1db41d Stabilize post and slow_post autests under parallel runs
(#12886)
add 3bdfaa59b3 Fix filter_body plugin: deterministic request blocking and
response body blocking (#12876)
add b287b7242a Fix the log field type for cqpv and sqpv (#12890)
add 4c21c45319 Add proxy.process.http.429_responses metric (#12878)
add 9f9752d47c proxy.process.http.000_responses metric (#12861)
add 20c074e7a2 Implement RFC 9213 Targeted HTTP Cache Control (#12679)
new 9982fecf36 Merge latest master into 11-Dev
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.claude/CLAUDE.md | 3 +-
.claude/CLAUDE.md => .codex/AGENTS.md | 104 +-
.github/copilot-instructions.md | 428 ++++++++
.github/instructions/HRW.instructions.md | 223 ++++
.gitignore | 5 +
CMakeLists.txt | 12 +-
doc/admin-guide/configuration/cache-basics.en.rst | 78 ++
doc/admin-guide/configuration/hrw4u.en.rst | 74 +-
doc/admin-guide/files/records.yaml.en.rst | 25 +
doc/admin-guide/logging/formatting.en.rst | 4 +
.../statistics/core/http-response-code.en.rst | 10 +
doc/admin-guide/plugins/lua.en.rst | 68 ++
doc/admin-guide/storage/index.en.rst | 23 +
.../api/functions/TSHttpOverridableConfig.en.rst | 1 +
.../api/types/TSOverridableConfigKey.en.rst | 1 +
doc/developer-guide/testing/autests.en.rst | 31 +
include/iocore/net/ProxyProtocol.h | 4 +
include/proxy/hdrs/MIME.h | 3 +-
include/proxy/http/HttpConfig.h | 49 +-
include/proxy/http/OverridableConfigDefs.h | 3 +-
include/proxy/logging/LogAccess.h | 2 +
include/ts/apidefs.h.in | 1 +
plugins/experimental/filter_body/filter_body.cc | 75 +-
plugins/lua/ts_lua_misc.cc | 66 ++
src/api/InkAPI.cc | 21 +
src/iocore/net/P_NetAccept.h | 28 +-
src/iocore/net/ProxyProtocol.cc | 78 ++
src/iocore/net/QUICNetProcessor.cc | 4 +-
src/iocore/net/UnixNetAccept.cc | 8 +-
src/iocore/net/UnixNetProcessor.cc | 4 +-
src/iocore/net/unit_tests/test_ProxyProtocol.cc | 42 +-
src/proxy/hdrs/HdrToken.cc | 6 +-
src/proxy/hdrs/MIME.cc | 25 +-
src/proxy/http/HttpConfig.cc | 72 +-
src/proxy/http/HttpSM.cc | 19 +-
src/proxy/http/HttpTransact.cc | 7 +
src/proxy/logging/Log.cc | 14 +-
src/proxy/logging/LogAccess.cc | 42 +
src/records/RecordsConfig.cc | 2 +
src/traffic_logstats/logstats.cc | 5 +
src/traffic_logstats/tests/logstats.json | 3 +
src/traffic_logstats/tests/logstats.summary | 1 +
src/traffic_top/stats.h | 1 +
tests/CMakeLists.txt | 1 +
tests/README.md | 35 +
tests/autest-parallel.py.in | 1082 ++++++++++++++++++++
tests/autest.sh.in | 49 +-
tests/gold_tests/autest-site/ats_replay.test.ext | 80 +-
tests/gold_tests/autest-site/conditions.test.ext | 115 +++
tests/gold_tests/autest-site/microserver.test.ext | 25 +-
tests/gold_tests/autest-site/ports.py | 25 +-
tests/gold_tests/basic/config.test.py | 3 +-
tests/gold_tests/basic/copy_config.test.py | 8 +-
.../gold_tests/cache/cache-request-method.test.py | 3 +
..._post.replay.yaml => delete_cached.replay.yaml} | 155 ++-
.../replay/targeted-cache-control.replay.yaml | 389 +++++++
...hing.test.py => targeted-cache-control.test.py} | 12 +-
tests/gold_tests/logging/log_retention.test.py | 2 +-
.../config/filter_body_response_block.yaml | 1 -
.../pluginTest/filter_body/filter_body.replay.yaml | 39 +-
.../polite_hook_wait/polite_hook_wait.cc | 3 +-
tests/gold_tests/post/post-early-return.test.py | 21 +-
tests/gold_tests/post/server1.sh | 41 -
tests/gold_tests/remap/remap_acl.test.py | 13 +-
tests/gold_tests/slow_post/server_abort.test.py | 3 +-
tests/gold_tests/statistics/abort_client.py | 52 +
.../statistics/metric_response_000.test.py | 107 ++
.../statistics/metric_response_429.test.py | 8 +-
.../replay/metric_response_429.replay.yaml} | 72 +-
tests/gold_tests/tls/tls_client_versions.test.py | 32 +-
.../tls/tls_client_versions_minmax.test.py | 48 +-
.../traffic_ctl/traffic_ctl_test_utils.py | 51 +-
tests/serial_tests.txt | 8 +
tests/tools/mock_origin.py | 167 +++
tools/hrw4u/grammar/hrw4u.g4 | 2 +
tools/hrw4u/scripts/hrw4u | 27 +-
tools/hrw4u/scripts/u4wrh | 27 +-
tools/hrw4u/src/common.py | 104 ++
tools/hrw4u/src/hrw_symbols.py | 4 +-
tools/hrw4u/src/hrw_visitor.py | 2 +-
tools/hrw4u/src/visitor.py | 10 +-
.../hrw4u/tests/data/conds/double-negation.ast.txt | 1 +
.../tests/data/conds/double-negation.input.txt | 5 +
.../tests/data/conds/double-negation.output.txt | 5 +
tools/hrw4u/tests/data/conds/exceptions.txt | 2 +
tools/hrw4u/tests/data/conds/not-in-ip.ast.txt | 1 +
tools/hrw4u/tests/data/conds/not-in-ip.input.txt | 5 +
tools/hrw4u/tests/data/conds/not-in-ip.output.txt | 3 +
tools/hrw4u/tests/data/conds/not-in-sets.ast.txt | 1 +
tools/hrw4u/tests/data/conds/not-in-sets.input.txt | 5 +
.../hrw4u/tests/data/conds/not-in-sets.output.txt | 3 +
.../hrw4u/tests/{test_examples.py => test_bulk.py} | 37 +-
tools/hrw4u/tests/test_cli.py | 184 ++++
tools/hrw4u/tests/utils.py | 70 ++
94 files changed, 4383 insertions(+), 440 deletions(-)
copy .claude/CLAUDE.md => .codex/AGENTS.md (76%)
create mode 100644 .github/copilot-instructions.md
create mode 100644 .github/instructions/HRW.instructions.md
create mode 100755 tests/autest-parallel.py.in
copy tests/gold_tests/cache/replay/{get_then_post.replay.yaml =>
delete_cached.replay.yaml} (50%)
create mode 100644
tests/gold_tests/cache/replay/targeted-cache-control.replay.yaml
copy tests/gold_tests/cache/{alternate-caching.test.py =>
targeted-cache-control.test.py} (73%)
delete mode 100755 tests/gold_tests/post/server1.sh
create mode 100644 tests/gold_tests/statistics/abort_client.py
create mode 100644 tests/gold_tests/statistics/metric_response_000.test.py
copy plugins/experimental/wasm/examples/cpp/Makefile =>
tests/gold_tests/statistics/metric_response_429.test.py (83%)
copy tests/gold_tests/{remap/base.replay.yaml =>
statistics/replay/metric_response_429.replay.yaml} (59%)
create mode 100644 tests/serial_tests.txt
create mode 100644 tests/tools/mock_origin.py
create mode 100644 tools/hrw4u/tests/data/conds/double-negation.ast.txt
create mode 100644 tools/hrw4u/tests/data/conds/double-negation.input.txt
create mode 100644 tools/hrw4u/tests/data/conds/double-negation.output.txt
create mode 100644 tools/hrw4u/tests/data/conds/not-in-ip.ast.txt
create mode 100644 tools/hrw4u/tests/data/conds/not-in-ip.input.txt
create mode 100644 tools/hrw4u/tests/data/conds/not-in-ip.output.txt
create mode 100644 tools/hrw4u/tests/data/conds/not-in-sets.ast.txt
create mode 100644 tools/hrw4u/tests/data/conds/not-in-sets.input.txt
create mode 100644 tools/hrw4u/tests/data/conds/not-in-sets.output.txt
copy tools/hrw4u/tests/{test_examples.py => test_bulk.py} (54%)
create mode 100644 tools/hrw4u/tests/test_cli.py