k1LoW / runn

runn is a package/tool for running operations following a scenario.
https://runn.run
MIT License
433 stars 32 forks source link

Support `nullable: true` in HTTP validator ( Add workaround for libopenapi ) #878

Closed k1LoW closed 6 months ago

k1LoW commented 6 months ago

ref: https://github.com/k1LoW/runn/issues/876

github-actions[bot] commented 6 months ago

BenchmarkManyRunbooks-4

main (-) #878 (4b6c89f) +/-
Number of iterations 1 1 0
Nanoseconds per iteration 3,647,030,033 ns/op 3,686,726,593 ns/op 39,696,560 ns/op
Bytes allocated per iteration 1,791,676,080 B/op 1,792,219,600 B/op 543,520 B/op
Allocs per iteration 21,406,079 allocs/op 21,406,702 allocs/op 623 allocs/op
Metadata | | [main](https://github.com/k1LoW/runn/tree/main) (-) | [#878](https://github.com/k1LoW/runn/pull/878) ([4b6c89f](https://github.com/k1LoW/runn/commit/4b6c89f116ed37af9ccdc2c49dcea6c84359376f)) | |------------|----------------------------------------------------:|------------------------------------------------------------------------------------------------------------------------------------------:| | **goos** | linux | linux | | **goarch** | amd64 | amd64 | | **pkg** | github.com/k1LoW/runn | github.com/k1LoW/runn | | **cpu** | AMD EPYC 7763 64-Core Processor | AMD EPYC 7763 64-Core Processor |

BenchmarkOpenAPI3-4

main (-) #878 (4b6c89f) +/-
Number of iterations 1 1 0
Nanoseconds per iteration 53,085,500,609 ns/op 53,334,646,533 ns/op 249,145,924 ns/op
Bytes allocated per iteration 31,431,045,296 B/op 31,431,633,480 B/op 588,184 B/op
Allocs per iteration 310,803,133 allocs/op 310,814,095 allocs/op 10,962 allocs/op
Metadata | | [main](https://github.com/k1LoW/runn/tree/main) (-) | [#878](https://github.com/k1LoW/runn/pull/878) ([4b6c89f](https://github.com/k1LoW/runn/commit/4b6c89f116ed37af9ccdc2c49dcea6c84359376f)) | |------------|----------------------------------------------------:|------------------------------------------------------------------------------------------------------------------------------------------:| | **goos** | linux | linux | | **goarch** | amd64 | amd64 | | **pkg** | github.com/k1LoW/runn | github.com/k1LoW/runn | | **cpu** | AMD EPYC 7763 64-Core Processor | AMD EPYC 7763 64-Core Processor |

BenchmarkSingleRunbook-4

main (-) #878 (4b6c89f) +/-
Number of iterations 18 18 0
Nanoseconds per iteration 63,209,274 ns/op 63,758,572 ns/op 549,298 ns/op
Bytes allocated per iteration 60,228,896 B/op 60,186,304 B/op -42,592 B/op
Allocs per iteration 205,705 allocs/op 205,676 allocs/op -29 allocs/op
Metadata | | [main](https://github.com/k1LoW/runn/tree/main) (-) | [#878](https://github.com/k1LoW/runn/pull/878) ([4b6c89f](https://github.com/k1LoW/runn/commit/4b6c89f116ed37af9ccdc2c49dcea6c84359376f)) | |------------|----------------------------------------------------:|------------------------------------------------------------------------------------------------------------------------------------------:| | **goos** | linux | linux | | **goarch** | amd64 | amd64 | | **pkg** | github.com/k1LoW/runn | github.com/k1LoW/runn | | **cpu** | AMD EPYC 7763 64-Core Processor | AMD EPYC 7763 64-Core Processor |

Reported by octocov

github-actions[bot] commented 6 months ago

BenchmarkManyRunbooks-4

main (-) #878 (7cb6529) +/-
Number of iterations 1 1 0
Nanoseconds per iteration 3,998,701,022 ns/op 3,819,389,152 ns/op -179,311,870 ns/op
Bytes allocated per iteration 1,792,953,328 B/op 1,792,221,224 B/op -732,104 B/op
Allocs per iteration 21,418,797 allocs/op 21,418,072 allocs/op -725 allocs/op
Metadata | | [main](https://github.com/k1LoW/runn/tree/main) (-) | [#878](https://github.com/k1LoW/runn/pull/878) ([7cb6529](https://github.com/k1LoW/runn/commit/7cb6529dc9ad7049813ba6bfb57af68aea21111d)) | |------------|----------------------------------------------------:|------------------------------------------------------------------------------------------------------------------------------------------:| | **goos** | linux | linux | | **goarch** | amd64 | amd64 | | **pkg** | github.com/k1LoW/runn | github.com/k1LoW/runn | | **cpu** | AMD EPYC 7763 64-Core Processor | AMD EPYC 7763 64-Core Processor |

BenchmarkOpenAPI3-4

main (-) #878 (7cb6529) +/-
Number of iterations 1 1 0
Nanoseconds per iteration 53,767,192,470 ns/op 53,933,799,877 ns/op 166,607,407 ns/op
Bytes allocated per iteration 31,431,723,328 B/op 31,431,329,744 B/op -393,584 B/op
Allocs per iteration 310,805,020 allocs/op 310,823,154 allocs/op 18,134 allocs/op
Metadata | | [main](https://github.com/k1LoW/runn/tree/main) (-) | [#878](https://github.com/k1LoW/runn/pull/878) ([7cb6529](https://github.com/k1LoW/runn/commit/7cb6529dc9ad7049813ba6bfb57af68aea21111d)) | |------------|----------------------------------------------------:|------------------------------------------------------------------------------------------------------------------------------------------:| | **goos** | linux | linux | | **goarch** | amd64 | amd64 | | **pkg** | github.com/k1LoW/runn | github.com/k1LoW/runn | | **cpu** | AMD EPYC 7763 64-Core Processor | AMD EPYC 7763 64-Core Processor |

BenchmarkSingleRunbook-4

main (-) #878 (7cb6529) +/-
Number of iterations 16 18 2
Nanoseconds per iteration 68,464,937 ns/op 66,041,183 ns/op -2,423,754 ns/op
Bytes allocated per iteration 60,176,699 B/op 60,221,081 B/op 44,382 B/op
Allocs per iteration 205,758 allocs/op 205,782 allocs/op 24 allocs/op
Metadata | | [main](https://github.com/k1LoW/runn/tree/main) (-) | [#878](https://github.com/k1LoW/runn/pull/878) ([7cb6529](https://github.com/k1LoW/runn/commit/7cb6529dc9ad7049813ba6bfb57af68aea21111d)) | |------------|----------------------------------------------------:|------------------------------------------------------------------------------------------------------------------------------------------:| | **goos** | linux | linux | | **goarch** | amd64 | amd64 | | **pkg** | github.com/k1LoW/runn | github.com/k1LoW/runn | | **cpu** | AMD EPYC 7763 64-Core Processor | AMD EPYC 7763 64-Core Processor |

Reported by octocov

github-actions[bot] commented 6 months ago

BenchmarkManyRunbooks-4

main (-) #878 (b8ee9b0) +/-
Number of iterations 1 1 0
Nanoseconds per iteration 4,073,477,681 ns/op 3,820,406,614 ns/op -253,071,067 ns/op
Bytes allocated per iteration 1,792,600,888 B/op 1,792,546,528 B/op -54,360 B/op
Allocs per iteration 21,418,458 allocs/op 21,418,627 allocs/op 169 allocs/op
Metadata | | [main](https://github.com/k1LoW/runn/tree/main) (-) | [#878](https://github.com/k1LoW/runn/pull/878) ([b8ee9b0](https://github.com/k1LoW/runn/commit/b8ee9b0237d90dcd44a6abf9240f6b69d8998793)) | |------------|----------------------------------------------------:|------------------------------------------------------------------------------------------------------------------------------------------:| | **goos** | linux | linux | | **goarch** | amd64 | amd64 | | **pkg** | github.com/k1LoW/runn | github.com/k1LoW/runn | | **cpu** | AMD EPYC 7763 64-Core Processor | AMD EPYC 7763 64-Core Processor |

BenchmarkOpenAPI3-4

main (-) #878 (b8ee9b0) +/-
Number of iterations 1 1 0
Nanoseconds per iteration 54,169,997,083 ns/op 54,641,558,800 ns/op 471,561,717 ns/op
Bytes allocated per iteration 31,431,345,896 B/op 31,431,695,936 B/op 350,040 B/op
Allocs per iteration 310,812,947 allocs/op 310,818,368 allocs/op 5,421 allocs/op
Metadata | | [main](https://github.com/k1LoW/runn/tree/main) (-) | [#878](https://github.com/k1LoW/runn/pull/878) ([b8ee9b0](https://github.com/k1LoW/runn/commit/b8ee9b0237d90dcd44a6abf9240f6b69d8998793)) | |------------|----------------------------------------------------:|------------------------------------------------------------------------------------------------------------------------------------------:| | **goos** | linux | linux | | **goarch** | amd64 | amd64 | | **pkg** | github.com/k1LoW/runn | github.com/k1LoW/runn | | **cpu** | AMD EPYC 7763 64-Core Processor | AMD EPYC 7763 64-Core Processor |

BenchmarkSingleRunbook-4

main (-) #878 (b8ee9b0) +/-
Number of iterations 16 16 0
Nanoseconds per iteration 68,006,526 ns/op 66,464,837 ns/op -1,541,689 ns/op
Bytes allocated per iteration 60,158,447 B/op 60,175,045 B/op 16,598 B/op
Allocs per iteration 205,753 allocs/op 205,762 allocs/op 9 allocs/op
Metadata | | [main](https://github.com/k1LoW/runn/tree/main) (-) | [#878](https://github.com/k1LoW/runn/pull/878) ([b8ee9b0](https://github.com/k1LoW/runn/commit/b8ee9b0237d90dcd44a6abf9240f6b69d8998793)) | |------------|----------------------------------------------------:|------------------------------------------------------------------------------------------------------------------------------------------:| | **goos** | linux | linux | | **goarch** | amd64 | amd64 | | **pkg** | github.com/k1LoW/runn | github.com/k1LoW/runn | | **cpu** | AMD EPYC 7763 64-Core Processor | AMD EPYC 7763 64-Core Processor |

Reported by octocov

github-actions[bot] commented 6 months ago

Code Metrics Report

main (dfd4601) #878 (b8ee9b0) +/-
Coverage 65.7% 65.8% +0.1%
Code to Test Ratio 1:0.7 1:0.7 +0.0
Test Execution Time - 3m51s +3m51s
Details ``` diff | | main (dfd4601) | #878 (b8ee9b0) | +/- | |---------------------|----------------|----------------|--------| + | Coverage | 65.7% | 65.8% | +0.1% | | Files | 71 | 71 | 0 | | Lines | 7546 | 7576 | +30 | + | Covered | 4957 | 4983 | +26 | + | Code to Test Ratio | 1:0.7 | 1:0.7 | +0.0 | | Code | 13615 | 13663 | +48 | + | Test | 9789 | 9903 | +114 | - | Test Execution Time | - | 3m51s | +3m51s | ```

Code coverage of files in pull request scope (77.0% → 79.8%)

Files Coverage +/-
http_validator.go 79.8% +2.8%

Reported by octocov

github-actions[bot] commented 6 months ago

BenchmarkManyRunbooks-4

main (-) #878 (4577c0f) +/-
Number of iterations 1 1 0
Nanoseconds per iteration 3,762,357,906 ns/op 4,010,840,225 ns/op 248,482,319 ns/op
Bytes allocated per iteration 1,792,322,760 B/op 1,792,003,072 B/op -319,688 B/op
Allocs per iteration 21,406,706 allocs/op 21,406,463 allocs/op -243 allocs/op
Metadata | | [main](https://github.com/k1LoW/runn/tree/main) (-) | [#878](https://github.com/k1LoW/runn/pull/878) ([4577c0f](https://github.com/k1LoW/runn/commit/4577c0fda35195a8b1958e227d910d79a8af8876)) | |------------|----------------------------------------------------:|------------------------------------------------------------------------------------------------------------------------------------------:| | **goos** | linux | linux | | **goarch** | amd64 | amd64 | | **pkg** | github.com/k1LoW/runn | github.com/k1LoW/runn | | **cpu** | AMD EPYC 7763 64-Core Processor | AMD EPYC 7763 64-Core Processor |

BenchmarkOpenAPI3-4

main (-) #878 (4577c0f) +/-
Number of iterations 1 1 0
Nanoseconds per iteration 53,534,971,798 ns/op 53,933,632,033 ns/op 398,660,235 ns/op
Bytes allocated per iteration 31,432,310,616 B/op 31,414,050,104 B/op -18,260,512 B/op
Allocs per iteration 310,808,198 allocs/op 310,803,312 allocs/op -4,886 allocs/op
Metadata | | [main](https://github.com/k1LoW/runn/tree/main) (-) | [#878](https://github.com/k1LoW/runn/pull/878) ([4577c0f](https://github.com/k1LoW/runn/commit/4577c0fda35195a8b1958e227d910d79a8af8876)) | |------------|----------------------------------------------------:|------------------------------------------------------------------------------------------------------------------------------------------:| | **goos** | linux | linux | | **goarch** | amd64 | amd64 | | **pkg** | github.com/k1LoW/runn | github.com/k1LoW/runn | | **cpu** | AMD EPYC 7763 64-Core Processor | AMD EPYC 7763 64-Core Processor |

BenchmarkSingleRunbook-4

main (-) #878 (4577c0f) +/-
Number of iterations 18 16 -2
Nanoseconds per iteration 67,111,295 ns/op 65,991,106 ns/op -1,120,189 ns/op
Bytes allocated per iteration 60,206,505 B/op 60,206,423 B/op -82 B/op
Allocs per iteration 205,673 allocs/op 205,675 allocs/op 2 allocs/op
Metadata | | [main](https://github.com/k1LoW/runn/tree/main) (-) | [#878](https://github.com/k1LoW/runn/pull/878) ([4577c0f](https://github.com/k1LoW/runn/commit/4577c0fda35195a8b1958e227d910d79a8af8876)) | |------------|----------------------------------------------------:|------------------------------------------------------------------------------------------------------------------------------------------:| | **goos** | linux | linux | | **goarch** | amd64 | amd64 | | **pkg** | github.com/k1LoW/runn | github.com/k1LoW/runn | | **cpu** | AMD EPYC 7763 64-Core Processor | AMD EPYC 7763 64-Core Processor |

Reported by octocov

github-actions[bot] commented 6 months ago

Code Metrics Report

main (dfd4601) #878 (4577c0f) +/-
Coverage 65.7% 65.8% +0.1%
Code to Test Ratio 1:0.7 1:0.7 +0.0
Test Execution Time - 4m36s +4m36s
Details ``` diff | | main (dfd4601) | #878 (4577c0f) | +/- | |---------------------|----------------|----------------|--------| + | Coverage | 65.7% | 65.8% | +0.1% | | Files | 71 | 71 | 0 | | Lines | 7546 | 7576 | +30 | + | Covered | 4957 | 4985 | +28 | + | Code to Test Ratio | 1:0.7 | 1:0.7 | +0.0 | | Code | 13615 | 13663 | +48 | + | Test | 9789 | 9912 | +123 | - | Test Execution Time | - | 4m36s | +4m36s | ```

Code coverage of files in pull request scope (77.0% → 79.8%)

Files Coverage +/-
http_validator.go 79.8% +2.8%

Reported by octocov