Skip to content

Bump actions/checkout from 4 to 5 - #720

Merged
AlexInLog merged 2 commits into
v2from
dependabot/github_actions/actions/checkout-5
Sep 11, 2025
Merged

Bump actions/checkout from 4 to 5#720
AlexInLog merged 2 commits into
v2from
dependabot/github_actions/actions/checkout-5

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 18, 2025

Copy link
Copy Markdown
Contributor

Bumps actions/checkout from 4 to 5.

Release notes

Sourced from actions/checkout's releases.

v5.0.0

What's Changed

⚠️ Minimum Compatible Runner Version

v2.327.1
Release Notes

Make sure your runner is updated to this version or newer to use this release.

Full Changelog: actions/checkout@v4...v5.0.0

v4.3.0

What's Changed

New Contributors

Full Changelog: actions/checkout@v4...v4.3.0

v4.2.2

What's Changed

Full Changelog: actions/checkout@v4.2.1...v4.2.2

v4.2.1

What's Changed

New Contributors

Full Changelog: actions/checkout@v4.2.0...v4.2.1

... (truncated)

Changelog

Sourced from actions/checkout's changelog.

Changelog

V5.0.0

V4.3.0

v4.2.2

v4.2.1

v4.2.0

v4.1.7

v4.1.6

v4.1.5

v4.1.4

v4.1.3

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code labels Aug 18, 2025
@coderabbitai

coderabbitai Bot commented Aug 18, 2025

Copy link
Copy Markdown
Contributor

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions

Copy link
Copy Markdown
Contributor

BENCHMARK RESULTS (AUTOGENERATED)

ci-ubuntu-gcc

General

name rxcpp rpp prev rpp ratio rpp no optimization
Subscribe empty callbacks to empty observable 303.47 ns 1.87 ns 1.88 ns 0.99 1.87 ns
Subscribe empty callbacks to empty observable via pipe operator 304.16 ns 1.86 ns 1.89 ns 0.98 1.86 ns

Sources

name rxcpp rpp prev rpp ratio rpp no optimization
from array of 1 - create + subscribe + immediate 726.79 ns 0.31 ns 0.31 ns 1.00 0.31 ns
from array of 1 - create + subscribe + current_thread 1094.22 ns 3.73 ns 3.73 ns 1.00 3.73 ns
concat_as_source of just(1 immediate) create + subscribe 2383.13 ns 114.13 ns 115.67 ns 0.99 114.45 ns
defer from array of 1 - defer + create + subscribe + immediate 736.04 ns 0.31 ns 0.31 ns 1.00 0.31 ns
interval - interval + take(3) + subscribe + immediate 2214.44 ns 59.93 ns 59.63 ns 1.01 59.63 ns
interval - interval + take(3) + subscribe + current_thread 3107.57 ns 32.65 ns 32.69 ns 1.00 34.50 ns
from array of 1 - create + as_blocking + subscribe + new_thread 35417.59 ns 35597.38 ns 29720.17 ns 1.20 32237.39 ns
from array of 1000 - create + as_blocking + subscribe + new_thread 44401.56 ns 53036.50 ns 54827.11 ns 0.97 55358.28 ns
concat_as_source of just(1 immediate) and just(1,2 immediate)create + subscribe 3594.01 ns 137.70 ns 133.80 ns 1.03 142.77 ns

Filtering Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just+take(1)+subscribe 1145.98 ns 0.31 ns 0.31 ns 1.00 0.31 ns
immediate_just+filter(true)+subscribe 914.16 ns 0.31 ns 0.31 ns 1.00 0.31 ns
immediate_just(1,2)+skip(1)+subscribe 1028.93 ns 0.31 ns 0.31 ns 1.00 0.31 ns
immediate_just(1,1,2)+distinct_until_changed()+subscribe 883.66 ns 0.31 ns 0.31 ns 1.00 0.31 ns
immediate_just(1,2)+first()+subscribe 1293.28 ns 0.31 ns 0.31 ns 1.00 0.31 ns
immediate_just(1,2)+last()+subscribe 947.36 ns 0.31 ns 0.31 ns 1.00 0.31 ns
immediate_just+take_last(1)+subscribe 1128.57 ns 18.34 ns 18.33 ns 1.00 19.57 ns
immediate_just(1,2,3)+element_at(1)+subscribe 896.89 ns 0.31 ns 0.31 ns 1.00 0.31 ns

Schedulers

name rxcpp rpp prev rpp ratio rpp no optimization
immediate scheduler create worker + schedule 266.47 ns 1.55 ns 1.55 ns 1.00 1.55 ns
current_thread scheduler create worker + schedule 367.65 ns 4.37 ns 4.35 ns 1.01 4.66 ns
current_thread scheduler create worker + schedule + recursive schedule 847.06 ns 61.19 ns 61.24 ns 1.00 61.56 ns

Transforming Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just+map(v*2)+subscribe 916.11 ns 0.31 ns 0.31 ns 1.00 0.31 ns
immediate_just+scan(10, std::plus)+subscribe 914.90 ns 0.31 ns 0.31 ns 1.00 0.31 ns
immediate_just+flat_map(immediate_just(v*2))+subscribe 2409.37 ns 123.54 ns 124.25 ns 0.99 186.91 ns
immediate_just+buffer(2)+subscribe 1582.40 ns 13.68 ns 13.67 ns 1.00 17.41 ns
immediate_just+window(2)+subscribe + subscsribe inner 2415.33 ns 1280.57 ns 1275.15 ns 1.00 1332.51 ns

Conditional Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just+take_while(false)+subscribe 911.65 ns - - 0.00 -
immediate_just+take_while(true)+subscribe 883.73 ns 0.31 ns 0.31 ns 1.00 0.31 ns

Utility Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just(1)+subscribe_on(immediate)+subscribe 1992.93 ns 0.31 ns 0.31 ns 1.00 0.31 ns

Combining Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 3537.47 ns 166.47 ns 157.03 ns 1.06 177.36 ns
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 3846.95 ns 159.43 ns 157.20 ns 1.01 183.78 ns
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 134.36 ns 132.62 ns 1.01 173.91 ns
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 3695.51 ns 369.49 ns 412.13 ns 0.90 379.04 ns
immediate_just(1) + zip(immediate_just(2)) + subscribe 2118.85 ns 223.12 ns 214.04 ns 1.04 212.90 ns
immediate_just(immediate_just(1), immediate_just(1)) + concat() + subscribe 3202.65 ns 259.71 ns 236.46 ns 1.10 269.34 ns

Subjects

name rxcpp rpp prev rpp ratio rpp no optimization
publish_subject with 1 observer - on_next 34.82 ns 14.79 ns 14.79 ns 1.00 14.96 ns
subscribe 100 observers to publish_subject 202936.50 ns 17732.50 ns 17671.79 ns 1.00 18167.05 ns
100 on_next to 100 observers to publish_subject 27253.25 ns 16900.60 ns 16904.02 ns 1.00 17105.55 ns

Scenarios

name rxcpp rpp prev rpp ratio rpp no optimization
basic sample 1450.52 ns 13.05 ns 13.05 ns 1.00 22.39 ns
basic sample with immediate scheduler 1399.91 ns 5.28 ns 5.28 ns 1.00 16.16 ns
mix operators with disposables and without disposables 6442.46 ns 1446.03 ns 1421.68 ns 1.02 1865.79 ns
single disposable and looooooong indentity chain 25041.27 ns 1124.22 ns 1025.49 ns 1.10 5245.49 ns

Aggregating Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just+reduce(10, std::plus)+subscribe 937.72 ns 0.31 ns 0.31 ns 1.00 0.31 ns

Error Handling Operators

name rxcpp rpp prev rpp ratio rpp no optimization
create(on_next(1), on_error())+on_error_resume_next(immediate_just(2)))+subscribe 2112.03 ns 986.08 ns 991.49 ns 0.99 1025.37 ns
create(on_error())+retry(1)+subscribe 623.69 ns 110.73 ns 109.44 ns 1.01 112.85 ns

ci-macos

General

name rxcpp rpp prev rpp ratio rpp no optimization
Subscribe empty callbacks to empty observable 393.43 ns 0.51 ns 1.03 ns 0.49 0.51 ns
Subscribe empty callbacks to empty observable via pipe operator 383.48 ns 0.51 ns 1.00 ns 0.50 0.51 ns

Sources

name rxcpp rpp prev rpp ratio rpp no optimization
from array of 1 - create + subscribe + immediate 741.17 ns 0.34 ns 0.37 ns 0.91 0.34 ns
from array of 1 - create + subscribe + current_thread 970.30 ns 4.04 ns 4.40 ns 0.92 4.10 ns
concat_as_source of just(1 immediate) create + subscribe 2252.88 ns 177.77 ns 272.60 ns 0.65 203.40 ns
defer from array of 1 - defer + create + subscribe + immediate 777.61 ns 0.34 ns 0.34 ns 0.97 0.37 ns
interval - interval + take(3) + subscribe + immediate 2003.69 ns 55.49 ns 76.71 ns 0.72 61.41 ns
interval - interval + take(3) + subscribe + current_thread 2543.19 ns 31.25 ns 37.23 ns 0.84 33.05 ns
from array of 1 - create + as_blocking + subscribe + new_thread 20461.36 ns 26051.28 ns 37789.10 ns 0.69 20031.63 ns
from array of 1000 - create + as_blocking + subscribe + new_thread 38644.91 ns 27587.50 ns 40241.33 ns 0.69 27312.50 ns
concat_as_source of just(1 immediate) and just(1,2 immediate)create + subscribe 3226.67 ns 192.39 ns 198.52 ns 0.97 261.57 ns

Filtering Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just+take(1)+subscribe 1137.04 ns 0.34 ns 0.40 ns 0.83 0.34 ns
immediate_just+filter(true)+subscribe 855.15 ns 0.34 ns 0.34 ns 1.01 0.33 ns
immediate_just(1,2)+skip(1)+subscribe 1147.01 ns 0.34 ns 0.41 ns 0.83 0.34 ns
immediate_just(1,1,2)+distinct_until_changed()+subscribe 929.54 ns 0.35 ns 0.45 ns 0.77 0.38 ns
immediate_just(1,2)+first()+subscribe 1311.64 ns 0.34 ns 0.61 ns 0.57 0.34 ns
immediate_just(1,2)+last()+subscribe 1045.32 ns 0.95 ns 1.05 ns 0.90 0.96 ns
immediate_just+take_last(1)+subscribe 1181.33 ns 0.33 ns 0.35 ns 0.94 0.34 ns
immediate_just(1,2,3)+element_at(1)+subscribe 862.56 ns 0.34 ns 0.36 ns 0.92 0.43 ns

Schedulers

name rxcpp rpp prev rpp ratio rpp no optimization
immediate scheduler create worker + schedule 313.59 ns 0.51 ns 1.56 ns 0.33 0.51 ns
current_thread scheduler create worker + schedule 445.78 ns 4.04 ns 4.07 ns 0.99 4.14 ns
current_thread scheduler create worker + schedule + recursive schedule 755.04 ns 65.62 ns 90.09 ns 0.73 66.09 ns

Transforming Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just+map(v*2)+subscribe 857.65 ns 2.66 ns 2.69 ns 0.99 2.70 ns
immediate_just+scan(10, std::plus)+subscribe 986.90 ns 0.34 ns 0.98 ns 0.34 0.34 ns
immediate_just+flat_map(immediate_just(v*2))+subscribe 2113.28 ns 209.20 ns 219.01 ns 0.96 259.56 ns
immediate_just+buffer(2)+subscribe 941.58 ns 15.77 ns 16.49 ns 0.96 16.71 ns
immediate_just+window(2)+subscribe + subscsribe inner 1951.05 ns 977.09 ns 1667.63 ns 0.59 1069.46 ns

Conditional Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just+take_while(false)+subscribe 893.56 ns - - 0.00 -
immediate_just+take_while(true)+subscribe 872.01 ns 0.34 ns 0.34 ns 1.01 0.35 ns

Utility Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just(1)+subscribe_on(immediate)+subscribe 1931.76 ns 1.88 ns 3.82 ns 0.49 2.00 ns

Combining Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 3072.23 ns 222.60 ns 231.94 ns 0.96 253.60 ns
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 3237.96 ns 211.50 ns 292.58 ns 0.72 221.27 ns
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 217.32 ns 406.52 ns 0.53 227.85 ns
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 3135.16 ns 533.30 ns 1033.28 ns 0.52 541.62 ns
immediate_just(1) + zip(immediate_just(2)) + subscribe 2154.89 ns 333.73 ns 663.17 ns 0.50 334.52 ns
immediate_just(immediate_just(1), immediate_just(1)) + concat() + subscribe 3013.64 ns 339.02 ns 375.35 ns 0.90 351.09 ns

Subjects

name rxcpp rpp prev rpp ratio rpp no optimization
publish_subject with 1 observer - on_next 44.86 ns 21.92 ns 23.34 ns 0.94 21.53 ns
subscribe 100 observers to publish_subject 141232.14 ns 18403.48 ns 19092.80 ns 0.96 17684.21 ns
100 on_next to 100 observers to publish_subject 31750.00 ns 12191.76 ns 11954.08 ns 1.02 13969.81 ns

Scenarios

name rxcpp rpp prev rpp ratio rpp no optimization
basic sample 1252.65 ns 10.78 ns 20.51 ns 0.53 44.44 ns
basic sample with immediate scheduler 1228.55 ns 5.40 ns 5.76 ns 0.94 11.51 ns
mix operators with disposables and without disposables 5749.39 ns 1407.11 ns 1548.47 ns 0.91 2195.53 ns
single disposable and looooooong indentity chain 16568.84 ns 1739.28 ns 2580.23 ns 0.67 5808.49 ns

Aggregating Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just+reduce(10, std::plus)+subscribe 1007.58 ns 0.34 ns 0.52 ns 0.65 0.34 ns

Error Handling Operators

name rxcpp rpp prev rpp ratio rpp no optimization
create(on_next(1), on_error())+on_error_resume_next(immediate_just(2)))+subscribe 3645.69 ns 2905.22 ns 8453.01 ns 0.34 2976.11 ns
create(on_error())+retry(1)+subscribe 716.16 ns 182.45 ns 202.93 ns 0.90 184.33 ns

ci-ubuntu-clang

General

name rxcpp rpp prev rpp ratio rpp no optimization
Subscribe empty callbacks to empty observable 285.55 ns 1.55 ns 1.55 ns 1.00 1.55 ns
Subscribe empty callbacks to empty observable via pipe operator 272.69 ns 1.55 ns 1.55 ns 1.00 1.55 ns

Sources

name rxcpp rpp prev rpp ratio rpp no optimization
from array of 1 - create + subscribe + immediate 564.79 ns 0.31 ns 0.31 ns 1.00 0.31 ns
from array of 1 - create + subscribe + current_thread 795.07 ns 4.04 ns 4.08 ns 0.99 4.04 ns
concat_as_source of just(1 immediate) create + subscribe 2375.52 ns 130.43 ns 131.09 ns 0.99 131.36 ns
defer from array of 1 - defer + create + subscribe + immediate 864.96 ns 0.31 ns 0.31 ns 1.00 0.31 ns
interval - interval + take(3) + subscribe + immediate 2348.88 ns 58.69 ns 58.71 ns 1.00 58.71 ns
interval - interval + take(3) + subscribe + current_thread 3122.46 ns 31.09 ns 31.11 ns 1.00 31.69 ns
from array of 1 - create + as_blocking + subscribe + new_thread 32943.06 ns 32487.39 ns 30036.38 ns 1.08 29386.74 ns
from array of 1000 - create + as_blocking + subscribe + new_thread 44978.31 ns 40415.15 ns 39411.27 ns 1.03 40818.04 ns
concat_as_source of just(1 immediate) and just(1,2 immediate)create + subscribe 3697.76 ns 149.67 ns 149.33 ns 1.00 148.24 ns

Filtering Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just+take(1)+subscribe 1152.33 ns 0.31 ns 0.31 ns 1.00 0.31 ns
immediate_just+filter(true)+subscribe 850.46 ns 0.31 ns 0.31 ns 1.00 0.31 ns
immediate_just(1,2)+skip(1)+subscribe 1078.43 ns 0.31 ns 0.31 ns 1.00 0.31 ns
immediate_just(1,1,2)+distinct_until_changed()+subscribe 891.51 ns 0.32 ns 0.33 ns 0.96 0.32 ns
immediate_just(1,2)+first()+subscribe 1379.86 ns 0.31 ns 0.31 ns 1.00 0.31 ns
immediate_just(1,2)+last()+subscribe 1011.40 ns 0.31 ns 0.31 ns 1.00 0.31 ns
immediate_just+take_last(1)+subscribe 1208.07 ns 0.31 ns 0.31 ns 1.00 0.31 ns
immediate_just(1,2,3)+element_at(1)+subscribe 877.82 ns 0.31 ns 0.31 ns 1.00 0.31 ns

Schedulers

name rxcpp rpp prev rpp ratio rpp no optimization
immediate scheduler create worker + schedule 284.43 ns 0.64 ns 0.64 ns 1.00 0.64 ns
current_thread scheduler create worker + schedule 432.47 ns 4.35 ns 4.04 ns 1.08 4.35 ns
current_thread scheduler create worker + schedule + recursive schedule 871.68 ns 55.17 ns 55.38 ns 1.00 56.41 ns

Transforming Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just+map(v*2)+subscribe 895.32 ns 0.31 ns 0.31 ns 1.00 0.31 ns
immediate_just+scan(10, std::plus)+subscribe 975.84 ns 0.62 ns 0.62 ns 1.00 0.33 ns
immediate_just+flat_map(immediate_just(v*2))+subscribe 2283.18 ns 139.88 ns 136.88 ns 1.02 136.59 ns
immediate_just+buffer(2)+subscribe 1570.41 ns 13.98 ns 14.60 ns 0.96 14.91 ns
immediate_just+window(2)+subscribe + subscsribe inner 2506.46 ns 960.66 ns 905.21 ns 1.06 909.66 ns

Conditional Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just+take_while(false)+subscribe 858.44 ns - - 0.00 -
immediate_just+take_while(true)+subscribe 866.26 ns 0.31 ns 0.31 ns 1.00 0.31 ns

Utility Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just(1)+subscribe_on(immediate)+subscribe 2039.96 ns 0.31 ns 0.31 ns 1.00 0.31 ns

Combining Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 3320.24 ns 161.71 ns 159.28 ns 1.02 155.52 ns
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 3725.87 ns 141.19 ns 138.08 ns 1.02 142.37 ns
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 143.15 ns 142.44 ns 1.00 138.00 ns
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 3409.34 ns 387.81 ns 380.35 ns 1.02 392.43 ns
immediate_just(1) + zip(immediate_just(2)) + subscribe 2255.78 ns 201.59 ns 201.21 ns 1.00 201.03 ns
immediate_just(immediate_just(1), immediate_just(1)) + concat() + subscribe 3303.51 ns 225.20 ns 227.05 ns 0.99 226.22 ns

Subjects

name rxcpp rpp prev rpp ratio rpp no optimization
publish_subject with 1 observer - on_next 54.69 ns 19.84 ns 19.75 ns 1.00 23.11 ns
subscribe 100 observers to publish_subject 208239.17 ns 17452.92 ns 18145.73 ns 0.96 17398.48 ns
100 on_next to 100 observers to publish_subject 37709.41 ns 20219.96 ns 20224.24 ns 1.00 20256.35 ns

Scenarios

name rxcpp rpp prev rpp ratio rpp no optimization
basic sample 1305.25 ns 11.50 ns 11.50 ns 1.00 21.45 ns
basic sample with immediate scheduler 1300.20 ns 5.90 ns 5.90 ns 1.00 6.52 ns
mix operators with disposables and without disposables 6612.01 ns 1192.85 ns 1184.92 ns 1.01 1480.57 ns
single disposable and looooooong indentity chain 27818.34 ns 1251.88 ns 1246.87 ns 1.00 4706.02 ns

Aggregating Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just+reduce(10, std::plus)+subscribe 1008.66 ns 0.31 ns 0.31 ns 1.00 0.31 ns

Error Handling Operators

name rxcpp rpp prev rpp ratio rpp no optimization
create(on_next(1), on_error())+on_error_resume_next(immediate_just(2)))+subscribe 2173.92 ns 1161.16 ns 1168.00 ns 0.99 1164.03 ns
create(on_error())+retry(1)+subscribe 655.95 ns 138.40 ns 138.59 ns 1.00 139.15 ns

ci-windows

General

name rxcpp rpp prev rpp ratio rpp no optimization
Subscribe empty callbacks to empty observable 556.07 ns 2.16 ns 2.16 ns 1.00 1.85 ns
Subscribe empty callbacks to empty observable via pipe operator 572.10 ns 2.16 ns 2.16 ns 1.00 1.85 ns

Sources

name rxcpp rpp prev rpp ratio rpp no optimization
from array of 1 - create + subscribe + immediate 1155.57 ns 4.93 ns 4.94 ns 1.00 5.55 ns
from array of 1 - create + subscribe + current_thread 1419.82 ns 15.75 ns 15.74 ns 1.00 15.45 ns
concat_as_source of just(1 immediate) create + subscribe 3696.46 ns 174.60 ns 174.62 ns 1.00 178.05 ns
defer from array of 1 - defer + create + subscribe + immediate 1180.65 ns 5.24 ns 5.24 ns 1.00 5.24 ns
interval - interval + take(3) + subscribe + immediate 3736.36 ns 139.81 ns 139.74 ns 1.00 142.29 ns
interval - interval + take(3) + subscribe + current_thread 3460.30 ns 60.15 ns 59.86 ns 1.00 62.80 ns
from array of 1 - create + as_blocking + subscribe + new_thread 123175.00 ns 118700.00 ns 120400.00 ns 0.99 119788.89 ns
from array of 1000 - create + as_blocking + subscribe + new_thread 132655.56 ns 135675.00 ns 136975.00 ns 0.99 137275.00 ns
concat_as_source of just(1 immediate) and just(1,2 immediate)create + subscribe 5329.67 ns 206.57 ns 201.39 ns 1.03 215.13 ns

Filtering Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just+take(1)+subscribe 1818.86 ns 19.42 ns 19.42 ns 1.00 21.36 ns
immediate_just+filter(true)+subscribe 1610.58 ns 18.50 ns 18.51 ns 1.00 21.59 ns
immediate_just(1,2)+skip(1)+subscribe 2008.80 ns 17.89 ns 17.91 ns 1.00 21.60 ns
immediate_just(1,1,2)+distinct_until_changed()+subscribe 1328.95 ns 20.67 ns 20.68 ns 1.00 26.86 ns
immediate_just(1,2)+first()+subscribe 2372.16 ns 18.20 ns 18.21 ns 1.00 19.43 ns
immediate_just(1,2)+last()+subscribe 1464.98 ns 19.13 ns 19.15 ns 1.00 22.84 ns
immediate_just+take_last(1)+subscribe 2023.02 ns 64.85 ns 64.93 ns 1.00 70.17 ns
immediate_just(1,2,3)+element_at(1)+subscribe 1622.12 ns 20.97 ns 20.98 ns 1.00 21.63 ns

Schedulers

name rxcpp rpp prev rpp ratio rpp no optimization
immediate scheduler create worker + schedule 477.39 ns 4.32 ns 4.32 ns 1.00 4.32 ns
current_thread scheduler create worker + schedule 648.68 ns 11.11 ns 11.11 ns 1.00 11.11 ns
current_thread scheduler create worker + schedule + recursive schedule 1079.50 ns 103.96 ns 101.36 ns 1.03 103.12 ns

Transforming Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just+map(v*2)+subscribe 1328.23 ns 18.80 ns 18.80 ns 1.00 21.63 ns
immediate_just+scan(10, std::plus)+subscribe 1422.12 ns 20.96 ns 20.96 ns 1.00 23.80 ns
immediate_just+flat_map(immediate_just(v*2))+subscribe 3837.33 ns 186.30 ns 185.11 ns 1.01 223.46 ns
immediate_just+buffer(2)+subscribe 2291.50 ns 64.26 ns 63.51 ns 1.01 72.33 ns
immediate_just+window(2)+subscribe + subscsribe inner 3974.07 ns 1216.92 ns 1192.15 ns 1.02 1226.57 ns

Conditional Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just+take_while(false)+subscribe 1305.28 ns 17.57 ns 17.57 ns 1.00 19.13 ns
immediate_just+take_while(true)+subscribe 1329.92 ns 18.50 ns 18.50 ns 1.00 21.60 ns

Utility Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just(1)+subscribe_on(immediate)+subscribe 3205.02 ns 11.10 ns 11.11 ns 1.00 11.11 ns

Combining Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 5054.46 ns 197.43 ns 195.27 ns 1.01 222.13 ns
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 5710.11 ns 186.78 ns 178.89 ns 1.04 204.81 ns
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 195.15 ns 194.65 ns 1.00 199.56 ns
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 6119.16 ns 444.60 ns 443.65 ns 1.00 489.05 ns
immediate_just(1) + zip(immediate_just(2)) + subscribe 3865.37 ns 538.25 ns 519.56 ns 1.04 516.04 ns
immediate_just(immediate_just(1), immediate_just(1)) + concat() + subscribe 4853.97 ns 314.42 ns 314.38 ns 1.00 325.14 ns

Subjects

name rxcpp rpp prev rpp ratio rpp no optimization
publish_subject with 1 observer - on_next 36.72 ns 29.42 ns 29.27 ns 1.01 30.01 ns
subscribe 100 observers to publish_subject 264250.00 ns 25013.33 ns 25450.00 ns 0.98 24830.23 ns
100 on_next to 100 observers to publish_subject 51881.82 ns 35939.39 ns 35922.58 ns 1.00 32997.22 ns

Scenarios

name rxcpp rpp prev rpp ratio rpp no optimization
basic sample 1853.25 ns 96.57 ns 96.80 ns 1.00 112.11 ns
basic sample with immediate scheduler 1857.89 ns 66.73 ns 68.51 ns 0.97 82.35 ns
mix operators with disposables and without disposables 9381.75 ns 1787.22 ns 1797.99 ns 0.99 2439.19 ns
single disposable and looooooong indentity chain 25641.46 ns 1655.18 ns 1630.37 ns 1.02 6267.21 ns

Aggregating Operators

name rxcpp rpp prev rpp ratio rpp no optimization
immediate_just+reduce(10, std::plus)+subscribe 1458.16 ns 19.11 ns 19.11 ns 1.00 22.83 ns

Error Handling Operators

name rxcpp rpp prev rpp ratio rpp no optimization
create(on_next(1), on_error())+on_error_resume_next(immediate_just(2)))+subscribe 1896.36 ns 357.24 ns 353.06 ns 1.01 380.86 ns
create(on_error())+retry(1)+subscribe 1721.11 ns 138.15 ns 137.92 ns 1.00 139.85 ns

@AlexInLog
AlexInLog merged commit 2a6f4f5 into v2 Sep 11, 2025
39 checks passed
@AlexInLog
AlexInLog deleted the dependabot/github_actions/actions/checkout-5 branch September 11, 2025 13:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant