Skip to content

Conversation

mhlidd
Copy link
Contributor

@mhlidd mhlidd commented Sep 18, 2025

What Does This Do

This PR implements the basic Gradle plugins for Config Inversion.

Components:

  • ParseSupportedConfigurationsTask & GeneratedSupportedConfigurations.java
    • Parses supported-configurations.json at build-time and stores the values in a static file GeneratedSupportedConfigurations.java
  • Linting Rules
    • Linting rule to enforce documentation of all statically called DD/OTEL environment variables (e.g. directly invoking DD_FOO_BAR)
    • Linting rule to restrict usage of EnvironmentVariables.get() and EnvironmentVariables.getAll(). This is to encourage the usage of ConfigHelper to enforce the documentation of unknown environment variables.
    • Note: Linting rules are not yet hooked into the project, as it should not be enforced until migration of existing code to Config Inversion Helpers are complete in follow-up PRs

Motivation

Additional Notes

Follow-up to

Next ones

Contributor Checklist

Jira ticket: [PROJ-IDENT]

@mhlidd mhlidd changed the base branch from master to mhlidd/supported_configurations September 18, 2025 21:24
@datadog-datadog-prod-us1
Copy link
Contributor

datadog-datadog-prod-us1 bot commented Sep 18, 2025

🎯 Code Coverage
Patch Coverage: 100.00%
Total Coverage: 59.80% (-0.01%)

View detailed report

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: d30ad8f | Docs | Was this helpful? Give us feedback!

@pr-commenter
Copy link

pr-commenter bot commented Sep 18, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mhlidd/config_inversion_plugins
git_commit_date 1758638766 1758645483
git_commit_sha e992b65 d30ad8f
release_version 1.54.0-SNAPSHOT~e992b65c80 1.54.0-SNAPSHOT~d30ad8f427
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1758647275 1758647275
ci_job_id 1143689524 1143689524
ci_pipeline_id 77309677 77309677
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-0-c33lc3ox 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-0-c33lc3ox 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
module Agent Agent
parent None None

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 55 metrics, 4 unstable metrics.

Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.54.0-SNAPSHOT~d30ad8f427, baseline=1.54.0-SNAPSHOT~e992b65c80

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.004 s) : 0, 1004277
Total [baseline] (8.652 s) : 0, 8652436
Agent [candidate] (1.003 s) : 0, 1002570
Total [candidate] (8.656 s) : 0, 8655626
section iast
Agent [baseline] (1.151 s) : 0, 1151483
Total [baseline] (9.334 s) : 0, 9334097
Agent [candidate] (1.144 s) : 0, 1144142
Total [candidate] (9.29 s) : 0, 9290346
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.004 s -
Agent iast 1.151 s 147.207 ms (14.7%)
Total tracing 8.652 s -
Total iast 9.334 s 681.661 ms (7.9%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.003 s -
Agent iast 1.144 s 141.571 ms (14.1%)
Total tracing 8.656 s -
Total iast 9.29 s 634.72 ms (7.3%)
gantt
    title insecure-bank - break down per module: candidate=1.54.0-SNAPSHOT~d30ad8f427, baseline=1.54.0-SNAPSHOT~e992b65c80

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.456 ms) : 0, 1456
crashtracking [candidate] (1.46 ms) : 0, 1460
BytebuddyAgent [baseline] (687.085 ms) : 0, 687085
BytebuddyAgent [candidate] (685.09 ms) : 0, 685090
GlobalTracer [baseline] (247.523 ms) : 0, 247523
GlobalTracer [candidate] (247.894 ms) : 0, 247894
AppSec [baseline] (30.946 ms) : 0, 30946
AppSec [candidate] (30.967 ms) : 0, 30967
Debugger [baseline] (6.368 ms) : 0, 6368
Debugger [candidate] (6.321 ms) : 0, 6321
Remote Config [baseline] (680.49 µs) : 0, 680
Remote Config [candidate] (678.085 µs) : 0, 678
Telemetry [baseline] (9.063 ms) : 0, 9063
Telemetry [candidate] (9.043 ms) : 0, 9043
section iast
crashtracking [baseline] (1.488 ms) : 0, 1488
crashtracking [candidate] (1.458 ms) : 0, 1458
BytebuddyAgent [baseline] (815.173 ms) : 0, 815173
BytebuddyAgent [candidate] (808.989 ms) : 0, 808989
GlobalTracer [baseline] (238.997 ms) : 0, 238997
GlobalTracer [candidate] (238.062 ms) : 0, 238062
AppSec [baseline] (33.69 ms) : 0, 33690
AppSec [candidate] (33.438 ms) : 0, 33438
Debugger [baseline] (6.029 ms) : 0, 6029
Debugger [candidate] (6.09 ms) : 0, 6090
Remote Config [baseline] (592.605 µs) : 0, 593
Remote Config [candidate] (587.656 µs) : 0, 588
Telemetry [baseline] (8.288 ms) : 0, 8288
Telemetry [candidate] (8.225 ms) : 0, 8225
IAST [baseline] (25.966 ms) : 0, 25966
IAST [candidate] (26.002 ms) : 0, 26002
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.54.0-SNAPSHOT~d30ad8f427, baseline=1.54.0-SNAPSHOT~e992b65c80

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.004 s) : 0, 1004286
Total [baseline] (10.716 s) : 0, 10716348
Agent [candidate] (1.003 s) : 0, 1002612
Total [candidate] (10.755 s) : 0, 10755051
section appsec
Agent [baseline] (1.185 s) : 0, 1185437
Total [baseline] (11.043 s) : 0, 11043087
Agent [candidate] (1.184 s) : 0, 1183574
Total [candidate] (11.017 s) : 0, 11016919
section iast
Agent [baseline] (1.144 s) : 0, 1144478
Total [baseline] (10.878 s) : 0, 10877826
Agent [candidate] (1.14 s) : 0, 1139889
Total [candidate] (10.938 s) : 0, 10938360
section profiling
Agent [baseline] (1.16 s) : 0, 1159965
Total [baseline] (11.024 s) : 0, 11024277
Agent [candidate] (1.153 s) : 0, 1153158
Total [candidate] (11.034 s) : 0, 11034201
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.004 s -
Agent appsec 1.185 s 181.151 ms (18.0%)
Agent iast 1.144 s 140.192 ms (14.0%)
Agent profiling 1.16 s 155.679 ms (15.5%)
Total tracing 10.716 s -
Total appsec 11.043 s 326.739 ms (3.0%)
Total iast 10.878 s 161.478 ms (1.5%)
Total profiling 11.024 s 307.929 ms (2.9%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.003 s -
Agent appsec 1.184 s 180.962 ms (18.0%)
Agent iast 1.14 s 137.277 ms (13.7%)
Agent profiling 1.153 s 150.546 ms (15.0%)
Total tracing 10.755 s -
Total appsec 11.017 s 261.867 ms (2.4%)
Total iast 10.938 s 183.309 ms (1.7%)
Total profiling 11.034 s 279.15 ms (2.6%)
gantt
    title petclinic - break down per module: candidate=1.54.0-SNAPSHOT~d30ad8f427, baseline=1.54.0-SNAPSHOT~e992b65c80

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.459 ms) : 0, 1459
crashtracking [candidate] (1.461 ms) : 0, 1461
BytebuddyAgent [baseline] (687.131 ms) : 0, 687131
BytebuddyAgent [candidate] (685.054 ms) : 0, 685054
GlobalTracer [baseline] (247.404 ms) : 0, 247404
GlobalTracer [candidate] (247.709 ms) : 0, 247709
AppSec [baseline] (31.145 ms) : 0, 31145
AppSec [candidate] (31.239 ms) : 0, 31239
Debugger [baseline] (6.329 ms) : 0, 6329
Debugger [candidate] (6.284 ms) : 0, 6284
Remote Config [baseline] (685.352 µs) : 0, 685
Remote Config [candidate] (670.16 µs) : 0, 670
Telemetry [baseline] (8.926 ms) : 0, 8926
Telemetry [candidate] (9.005 ms) : 0, 9005
section appsec
crashtracking [baseline] (1.456 ms) : 0, 1456
crashtracking [candidate] (1.446 ms) : 0, 1446
BytebuddyAgent [baseline] (710.106 ms) : 0, 710106
BytebuddyAgent [candidate] (709.424 ms) : 0, 709424
GlobalTracer [baseline] (239.534 ms) : 0, 239534
GlobalTracer [candidate] (239.322 ms) : 0, 239322
AppSec [baseline] (172.37 ms) : 0, 172370
AppSec [candidate] (170.993 ms) : 0, 170993
Debugger [baseline] (5.982 ms) : 0, 5982
Debugger [candidate] (6.759 ms) : 0, 6759
Remote Config [baseline] (626.511 µs) : 0, 627
Remote Config [candidate] (627.067 µs) : 0, 627
Telemetry [baseline] (9.274 ms) : 0, 9274
Telemetry [candidate] (9.127 ms) : 0, 9127
IAST [baseline] (24.884 ms) : 0, 24884
IAST [candidate] (24.702 ms) : 0, 24702
section iast
crashtracking [baseline] (1.456 ms) : 0, 1456
crashtracking [candidate] (1.459 ms) : 0, 1459
BytebuddyAgent [baseline] (808.714 ms) : 0, 808714
BytebuddyAgent [candidate] (805.786 ms) : 0, 805786
GlobalTracer [baseline] (238.073 ms) : 0, 238073
GlobalTracer [candidate] (237.145 ms) : 0, 237145
AppSec [baseline] (33.959 ms) : 0, 33959
AppSec [candidate] (33.398 ms) : 0, 33398
Debugger [baseline] (6.048 ms) : 0, 6048
Debugger [candidate] (6.061 ms) : 0, 6061
Remote Config [baseline] (595.676 µs) : 0, 596
Remote Config [candidate] (592.374 µs) : 0, 592
Telemetry [baseline] (8.239 ms) : 0, 8239
Telemetry [candidate] (8.196 ms) : 0, 8196
IAST [baseline] (26.056 ms) : 0, 26056
IAST [candidate] (25.955 ms) : 0, 25955
section profiling
crashtracking [baseline] (1.445 ms) : 0, 1445
crashtracking [candidate] (1.438 ms) : 0, 1438
BytebuddyAgent [baseline] (723.988 ms) : 0, 723988
BytebuddyAgent [candidate] (719.793 ms) : 0, 719793
GlobalTracer [baseline] (225.783 ms) : 0, 225783
GlobalTracer [candidate] (224.163 ms) : 0, 224163
AppSec [baseline] (31.552 ms) : 0, 31552
AppSec [candidate] (31.429 ms) : 0, 31429
Debugger [baseline] (8.139 ms) : 0, 8139
Debugger [candidate] (7.265 ms) : 0, 7265
Remote Config [baseline] (707.685 µs) : 0, 708
Remote Config [candidate] (713.687 µs) : 0, 714
Telemetry [baseline] (14.682 ms) : 0, 14682
Telemetry [candidate] (15.615 ms) : 0, 15615
ProfilingAgent [baseline] (102.177 ms) : 0, 102177
ProfilingAgent [candidate] (101.726 ms) : 0, 101726
Profiling [baseline] (102.767 ms) : 0, 102767
Profiling [candidate] (102.319 ms) : 0, 102319
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mhlidd/config_inversion_plugins
git_commit_date 1758638766 1758645483
git_commit_sha e992b65 d30ad8f
release_version 1.54.0-SNAPSHOT~e992b65c80 1.54.0-SNAPSHOT~d30ad8f427
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1758646933 1758646933
ci_job_id 1143689526 1143689526
ci_pipeline_id 77309677 77309677
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-1-t1t92lzg 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-1-t1t92lzg 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

Found 4 performance improvements and 1 performance regressions! Performance is the same for 7 metrics, 12 unstable metrics.

scenario Δ mean http_req_duration Δ mean throughput candidate mean http_req_duration candidate mean throughput baseline mean http_req_duration baseline mean throughput
scenario:load:insecure-bank:tracing:high_load better
[-460.103µs; -208.548µs] or [-5.757%; -2.610%]
unstable
[-48.297op/s; +98.359op/s] or [-8.331%; +16.966%]
7.657ms 604.781op/s 7.992ms 579.750op/s
scenario:load:insecure-bank:iast:high_load better
[-790.505µs; -440.449µs] or [-7.931%; -4.419%]
unstable
[-27.498op/s; +88.248op/s] or [-5.901%; +18.936%]
9.351ms 496.406op/s 9.967ms 466.031op/s
scenario:load:petclinic:tracing:high_load better
[-1.909ms; -1.060ms] or [-4.155%; -2.306%]
unstable
[-4.210op/s; +11.035op/s] or [-4.136%; +10.841%]
44.470ms 105.200op/s 45.954ms 101.787op/s
scenario:load:petclinic:no_agent:high_load better
[-2.793ms; -2.138ms] or [-7.228%; -5.532%]
unstable
[-0.807op/s; +17.232op/s] or [-0.667%; +14.240%]
36.175ms 129.225op/s 38.640ms 121.013op/s
scenario:load:petclinic:appsec:high_load worse
[+1.595ms; +2.482ms] or [+3.362%; +5.232%]
unstable
[-10.955op/s; +2.830op/s] or [-11.106%; +2.869%]
49.480ms 94.575op/s 47.442ms 98.638op/s
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.54.0-SNAPSHOT~d30ad8f427, baseline=1.54.0-SNAPSHOT~e992b65c80
    dateFormat X
    axisFormat %s
section baseline
no_agent (38.64 ms) : 38321, 38959
.   : milestone, 38640,
appsec (47.442 ms) : 47039, 47844
.   : milestone, 47442,
code_origins (44.368 ms) : 43979, 44756
.   : milestone, 44368,
iast (46.544 ms) : 46134, 46955
.   : milestone, 46544,
profiling (47.832 ms) : 47385, 48279
.   : milestone, 47832,
tracing (45.954 ms) : 45562, 46347
.   : milestone, 45954,
section candidate
no_agent (36.175 ms) : 35886, 36464
.   : milestone, 36175,
appsec (49.48 ms) : 49058, 49902
.   : milestone, 49480,
code_origins (45.045 ms) : 44647, 45443
.   : milestone, 45045,
iast (45.247 ms) : 44862, 45632
.   : milestone, 45247,
profiling (47.3 ms) : 46861, 47739
.   : milestone, 47300,
tracing (44.47 ms) : 44072, 44867
.   : milestone, 44470,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 38.64 ms [38.321 ms, 38.959 ms] -
appsec 47.442 ms [47.039 ms, 47.844 ms] 8.802 ms (22.8%)
code_origins 44.368 ms [43.979 ms, 44.756 ms] 5.728 ms (14.8%)
iast 46.544 ms [46.134 ms, 46.955 ms] 7.904 ms (20.5%)
profiling 47.832 ms [47.385 ms, 48.279 ms] 9.192 ms (23.8%)
tracing 45.954 ms [45.562 ms, 46.347 ms] 7.314 ms (18.9%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 36.175 ms [35.886 ms, 36.464 ms] -
appsec 49.48 ms [49.058 ms, 49.902 ms] 13.306 ms (36.8%)
code_origins 45.045 ms [44.647 ms, 45.443 ms] 8.87 ms (24.5%)
iast 45.247 ms [44.862 ms, 45.632 ms] 9.072 ms (25.1%)
profiling 47.3 ms [46.861 ms, 47.739 ms] 11.125 ms (30.8%)
tracing 44.47 ms [44.072 ms, 44.867 ms] 8.295 ms (22.9%)
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.54.0-SNAPSHOT~d30ad8f427, baseline=1.54.0-SNAPSHOT~e992b65c80
    dateFormat X
    axisFormat %s
section baseline
no_agent (4.406 ms) : 4350, 4461
.   : milestone, 4406,
iast (9.967 ms) : 9794, 10140
.   : milestone, 9967,
iast_FULL (13.979 ms) : 13704, 14254
.   : milestone, 13979,
iast_GLOBAL (10.493 ms) : 10308, 10678
.   : milestone, 10493,
profiling (9.387 ms) : 9215, 9559
.   : milestone, 9387,
tracing (7.992 ms) : 7873, 8110
.   : milestone, 7992,
section candidate
no_agent (4.364 ms) : 4308, 4420
.   : milestone, 4364,
iast (9.351 ms) : 9200, 9503
.   : milestone, 9351,
iast_FULL (14.541 ms) : 14246, 14837
.   : milestone, 14541,
iast_GLOBAL (10.474 ms) : 10277, 10671
.   : milestone, 10474,
profiling (9.053 ms) : 8899, 9207
.   : milestone, 9053,
tracing (7.657 ms) : 7542, 7773
.   : milestone, 7657,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 4.406 ms [4.35 ms, 4.461 ms] -
iast 9.967 ms [9.794 ms, 10.14 ms] 5.561 ms (126.2%)
iast_FULL 13.979 ms [13.704 ms, 14.254 ms] 9.573 ms (217.3%)
iast_GLOBAL 10.493 ms [10.308 ms, 10.678 ms] 6.088 ms (138.2%)
profiling 9.387 ms [9.215 ms, 9.559 ms] 4.981 ms (113.1%)
tracing 7.992 ms [7.873 ms, 8.11 ms] 3.586 ms (81.4%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 4.364 ms [4.308 ms, 4.42 ms] -
iast 9.351 ms [9.2 ms, 9.503 ms] 4.987 ms (114.3%)
iast_FULL 14.541 ms [14.246 ms, 14.837 ms] 10.177 ms (233.2%)
iast_GLOBAL 10.474 ms [10.277 ms, 10.671 ms] 6.11 ms (140.0%)
profiling 9.053 ms [8.899 ms, 9.207 ms] 4.689 ms (107.4%)
tracing 7.657 ms [7.542 ms, 7.773 ms] 3.293 ms (75.5%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mhlidd/config_inversion_plugins
git_commit_date 1758638766 1758645483
git_commit_sha e992b65 d30ad8f
release_version 1.54.0-SNAPSHOT~e992b65c80 1.54.0-SNAPSHOT~d30ad8f427
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1758647522 1758647522
ci_job_id 1143689527 1143689527
ci_pipeline_id 77309677 77309677
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-0-g4gxic0t 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-0-g4gxic0t 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 1 unstable metrics.

Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.54.0-SNAPSHOT~d30ad8f427, baseline=1.54.0-SNAPSHOT~e992b65c80
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.473 ms) : 1461, 1484
.   : milestone, 1473,
appsec (2.506 ms) : 2453, 2559
.   : milestone, 2506,
iast (2.194 ms) : 2131, 2257
.   : milestone, 2194,
iast_GLOBAL (2.259 ms) : 2195, 2323
.   : milestone, 2259,
profiling (2.054 ms) : 2003, 2104
.   : milestone, 2054,
tracing (2.012 ms) : 1963, 2061
.   : milestone, 2012,
section candidate
no_agent (1.477 ms) : 1466, 1489
.   : milestone, 1477,
appsec (3.713 ms) : 3493, 3934
.   : milestone, 3713,
iast (2.202 ms) : 2139, 2265
.   : milestone, 2202,
iast_GLOBAL (2.256 ms) : 2192, 2320
.   : milestone, 2256,
profiling (2.04 ms) : 1989, 2091
.   : milestone, 2040,
tracing (2.023 ms) : 1974, 2073
.   : milestone, 2023,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.473 ms [1.461 ms, 1.484 ms] -
appsec 2.506 ms [2.453 ms, 2.559 ms] 1.033 ms (70.1%)
iast 2.194 ms [2.131 ms, 2.257 ms] 720.798 µs (48.9%)
iast_GLOBAL 2.259 ms [2.195 ms, 2.323 ms] 786.11 µs (53.4%)
profiling 2.054 ms [2.003 ms, 2.104 ms] 580.665 µs (39.4%)
tracing 2.012 ms [1.963 ms, 2.061 ms] 539.355 µs (36.6%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.477 ms [1.466 ms, 1.489 ms] -
appsec 3.713 ms [3.493 ms, 3.934 ms] 2.236 ms (151.4%)
iast 2.202 ms [2.139 ms, 2.265 ms] 724.925 µs (49.1%)
iast_GLOBAL 2.256 ms [2.192 ms, 2.32 ms] 778.848 µs (52.7%)
profiling 2.04 ms [1.989 ms, 2.091 ms] 563.186 µs (38.1%)
tracing 2.023 ms [1.974 ms, 2.073 ms] 546.204 µs (37.0%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.54.0-SNAPSHOT~d30ad8f427, baseline=1.54.0-SNAPSHOT~e992b65c80
    dateFormat X
    axisFormat %s
section baseline
no_agent (14.989 s) : 14989000, 14989000
.   : milestone, 14989000,
appsec (15.247 s) : 15247000, 15247000
.   : milestone, 15247000,
iast (18.54 s) : 18540000, 18540000
.   : milestone, 18540000,
iast_GLOBAL (18.079 s) : 18079000, 18079000
.   : milestone, 18079000,
profiling (15.304 s) : 15304000, 15304000
.   : milestone, 15304000,
tracing (14.942 s) : 14942000, 14942000
.   : milestone, 14942000,
section candidate
no_agent (15.484 s) : 15484000, 15484000
.   : milestone, 15484000,
appsec (15.134 s) : 15134000, 15134000
.   : milestone, 15134000,
iast (18.54 s) : 18540000, 18540000
.   : milestone, 18540000,
iast_GLOBAL (17.913 s) : 17913000, 17913000
.   : milestone, 17913000,
profiling (16.077 s) : 16077000, 16077000
.   : milestone, 16077000,
tracing (14.941 s) : 14941000, 14941000
.   : milestone, 14941000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.989 s [14.989 s, 14.989 s] -
appsec 15.247 s [15.247 s, 15.247 s] 258.0 ms (1.7%)
iast 18.54 s [18.54 s, 18.54 s] 3.551 s (23.7%)
iast_GLOBAL 18.079 s [18.079 s, 18.079 s] 3.09 s (20.6%)
profiling 15.304 s [15.304 s, 15.304 s] 315.0 ms (2.1%)
tracing 14.942 s [14.942 s, 14.942 s] -47.0 ms (-0.3%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.484 s [15.484 s, 15.484 s] -
appsec 15.134 s [15.134 s, 15.134 s] -350.0 ms (-2.3%)
iast 18.54 s [18.54 s, 18.54 s] 3.056 s (19.7%)
iast_GLOBAL 17.913 s [17.913 s, 17.913 s] 2.429 s (15.7%)
profiling 16.077 s [16.077 s, 16.077 s] 593.0 ms (3.8%)
tracing 14.941 s [14.941 s, 14.941 s] -543.0 ms (-3.5%)

@mhlidd mhlidd marked this pull request as ready for review September 19, 2025 00:32
@mhlidd mhlidd requested a review from a team as a code owner September 19, 2025 00:32
@mhlidd mhlidd requested review from dougqh and bric3 September 19, 2025 00:32
@mhlidd mhlidd added type: enhancement Enhancements and improvements comp: tooling Build & Tooling labels Sep 19, 2025

PrintWriter(outFile).use { out ->
// NOTE: adjust these if you want to match task's className
out.println("package $packageName;")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 suggestion: ‏I would recommend using Kotlin multiline strings for readability.

Copy link
Contributor

@bric3 bric3 Sep 22, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

polish: There's also the buildString { } but that's basically some sugar around a StringBuilder. The multiline, looks like a nice improvement. But could be done in a follow-up.

@@ -1,5 +1,6 @@
plugins {
`java-library`
id("supported-config-generator")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

note: Just some tip about kotlin-dsl, it also possible to refer to that plugin with the generated accessor supported-config-generator which is exactly the same as id("supported-config-generator").

Note this code is fine and you can close the comment.

Comment on lines +50 to +55
val supported: Set<String> = URLClassLoader(urls, javaClass.classLoader).use { cl ->
// 2) Load the generated class + read static field
val clazz = Class.forName(generatedFile.get(), true, cl)
@Suppress("UNCHECKED_CAST")
clazz.getField("SUPPORTED").get(null) as Set<String>
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thought: I believe this might be more efficient to parse the json file rather than wait for generatedFile (actually a generatedClass) to be compiled.

Copy link
Contributor

@bric3 bric3 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good already, but I'm unsure about the exclude pattern.

Other comments can be addressed in a later PR.

Base automatically changed from mhlidd/supported_configurations to master September 22, 2025 18:12
@mhlidd mhlidd requested a review from a team as a code owner September 22, 2025 18:12
@mhlidd mhlidd requested a review from bric3 September 23, 2025 03:21
Copy link
Contributor

@bric3 bric3 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's go with the current implementation! Thanks for this job!

@mhlidd mhlidd merged commit 70cfa2d into master Sep 23, 2025
545 checks passed
@mhlidd mhlidd deleted the mhlidd/config_inversion_plugins branch September 23, 2025 18:31
@github-actions github-actions bot added this to the 1.54.0 milestone Sep 23, 2025
@mhlidd mhlidd added the tag: no release notes Changes to exclude from release notes label Sep 23, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
comp: tooling Build & Tooling tag: no release notes Changes to exclude from release notes type: enhancement Enhancements and improvements
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants