• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

moscajs / aedes
100%

Build:
DEFAULT BRANCH: main
Repo Added 26 Jan 2020 03:51PM UTC
Token reeIIvLL038Ei5xilzxM6Vs8lvN3OopEW regen
Build 1427 Last
Files 14
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH main
branch: main
CHANGE BRANCH
x
Reset
Sync Branches
  • main
  • Chore-update-CI-to-remove-Node-12
  • add-handler-types
  • add-kuzzle-project
  • add_preunsubscribe_handler
  • automate-benchmarking
  • brokers-interface
  • bugfix/closed-client
  • bugfix/coverage_test
  • bugfix/enhance_test
  • bugfix/upgrade_tap
  • bump
  • bump-deps
  • bump-mqtt-packet
  • chore/add_module_type
  • coverage
  • delete-will
  • dependabot/github_actions/actions/checkout-2.3.4
  • dependabot/github_actions/actions/checkout-2.3.5
  • dependabot/github_actions/actions/checkout-2.4.0
  • dependabot/github_actions/actions/checkout-3
  • dependabot/github_actions/actions/checkout-4
  • dependabot/github_actions/actions/dependency-review-action-3
  • dependabot/github_actions/actions/dependency-review-action-4
  • dependabot/github_actions/actions/setup-node-2.2.0
  • dependabot/github_actions/actions/setup-node-2.3.0
  • dependabot/github_actions/actions/setup-node-2.3.1
  • dependabot/github_actions/actions/setup-node-2.3.2
  • dependabot/github_actions/actions/setup-node-2.4.0
  • dependabot/github_actions/actions/setup-node-2.4.1
  • dependabot/github_actions/actions/setup-node-2.5.0
  • dependabot/github_actions/actions/setup-node-2.5.1
  • dependabot/github_actions/actions/setup-node-3
  • dependabot/github_actions/actions/setup-node-4
  • dependabot/github_actions/actions/setup-node-v2.1.5
  • dependabot/github_actions/github/codeql-action-3
  • dependabot/npm_and_yarn/aedes-packet-3.0.0
  • dependabot/npm_and_yarn/aedes-persistence-9.0.0
  • dependabot/npm_and_yarn/hyperid-3.0.0
  • dependabot/npm_and_yarn/markdownlint-cli-0.23.0
  • dependabot/npm_and_yarn/markdownlint-cli-0.24.0
  • dependabot/npm_and_yarn/markdownlint-cli-0.26.0
  • dependabot/npm_and_yarn/markdownlint-cli-0.27.0
  • dependabot/npm_and_yarn/markdownlint-cli-0.27.1
  • dependabot/npm_and_yarn/markdownlint-cli-0.28.1
  • dependabot/npm_and_yarn/markdownlint-cli-0.29.0
  • dependabot/npm_and_yarn/markdownlint-cli-0.30.0
  • dependabot/npm_and_yarn/markdownlint-cli-0.33.0
  • dependabot/npm_and_yarn/markdownlint-cli-0.37.0
  • dependabot/npm_and_yarn/markdownlint-cli-0.38.0
  • dependabot/npm_and_yarn/markdownlint-cli-0.40.0
  • dependabot/npm_and_yarn/markdownlint-cli-0.41.0
  • dependabot/npm_and_yarn/markdownlint-cli-0.42.0
  • dependabot/npm_and_yarn/mqemitter-6.0.0
  • dependabot/npm_and_yarn/mqtt-packet-7.0.0
  • dependabot/npm_and_yarn/mqtt-packet-8.1.0
  • dependabot/npm_and_yarn/release-it-14.0.2
  • dependabot/npm_and_yarn/release-it-15.0.0
  • dependabot/npm_and_yarn/release-it-15.1.0
  • dependabot/npm_and_yarn/release-it-15.1.1
  • dependabot/npm_and_yarn/release-it-15.1.2
  • dependabot/npm_and_yarn/release-it-17.0.0
  • dependabot/npm_and_yarn/release-it-17.0.1
  • dependabot/npm_and_yarn/release-it-17.0.3
  • dependabot/npm_and_yarn/retimer-3.0.0
  • dependabot/npm_and_yarn/sinonjs/fake-timers-10.0.0
  • dependabot/npm_and_yarn/sinonjs/fake-timers-10.0.2
  • dependabot/npm_and_yarn/sinonjs/fake-timers-13.0.1
  • dependabot/npm_and_yarn/sinonjs/fake-timers-13.0.2
  • dependabot/npm_and_yarn/sinonjs/fake-timers-13.0.3
  • dependabot/npm_and_yarn/sinonjs/fake-timers-13.0.4
  • dependabot/npm_and_yarn/sinonjs/fake-timers-14.0.0
  • dependabot/npm_and_yarn/sinonjs/fake-timers-7.0.0
  • dependabot/npm_and_yarn/sinonjs/fake-timers-8.0.1
  • dependabot/npm_and_yarn/sinonjs/fake-timers-9.0.0
  • dependabot/npm_and_yarn/sinonjs/fake-timers-9.1.0
  • dependabot/npm_and_yarn/snazzy-9.0.0
  • dependabot/npm_and_yarn/standard-15.0.0
  • dependabot/npm_and_yarn/tap-16.0.0
  • dependabot/npm_and_yarn/tsd-0.15.0
  • dependabot/npm_and_yarn/tsd-0.16.0
  • dependabot/npm_and_yarn/tsd-0.17.0
  • dependabot/npm_and_yarn/tsd-0.18.0
  • dependabot/npm_and_yarn/tsd-0.19.0
  • dependabot/npm_and_yarn/tsd-0.19.1
  • dependabot/npm_and_yarn/tsd-0.20.0
  • dependabot/npm_and_yarn/tsd-0.21.0
  • dependabot/npm_and_yarn/tsd-0.22.0
  • dependabot/npm_and_yarn/tsd-0.23.0
  • dependabot/npm_and_yarn/tsd-0.24.0
  • dependabot/npm_and_yarn/tsd-0.25.0
  • dependabot/npm_and_yarn/tsd-0.26.0
  • dependabot/npm_and_yarn/tsd-0.27.0
  • dependabot/npm_and_yarn/tsd-0.28.0
  • dependabot/npm_and_yarn/tsd-0.29.0
  • dependabot/npm_and_yarn/tsd-0.30.1
  • dependabot/npm_and_yarn/tsd-0.30.2
  • dependabot/npm_and_yarn/tsd-0.30.3
  • dependabot/npm_and_yarn/tsd-0.31.0
  • dependabot/npm_and_yarn/types/node-14.0.1
  • dependabot/npm_and_yarn/types/node-15.0.0
  • dependabot/npm_and_yarn/types/node-15.0.1
  • dependabot/npm_and_yarn/types/node-15.0.2
  • dependabot/npm_and_yarn/types/node-16.0.0
  • dependabot/npm_and_yarn/types/node-17.0.0
  • dependabot/npm_and_yarn/types/node-17.0.1
  • dependabot/npm_and_yarn/types/node-17.0.10
  • dependabot/npm_and_yarn/types/node-17.0.12
  • dependabot/npm_and_yarn/types/node-17.0.13
  • dependabot/npm_and_yarn/types/node-17.0.14
  • dependabot/npm_and_yarn/types/node-17.0.15
  • dependabot/npm_and_yarn/types/node-17.0.2
  • dependabot/npm_and_yarn/types/node-17.0.9
  • dependabot/npm_and_yarn/types/node-18.0.0
  • dependabot/npm_and_yarn/types/node-18.0.1
  • dependabot/npm_and_yarn/types/node-18.0.3
  • dependabot/npm_and_yarn/types/node-18.0.4
  • dependabot/npm_and_yarn/types/node-18.0.6
  • dependabot/npm_and_yarn/types/node-20.1.0
  • dependabot/npm_and_yarn/types/node-20.1.3
  • dependabot/npm_and_yarn/types/node-20.1.7
  • dependabot/npm_and_yarn/types/node-20.2.1
  • dependabot/npm_and_yarn/types/node-20.2.5
  • dependabot/npm_and_yarn/types/node-22.0.0
  • dependabot/npm_and_yarn/types/node-22.0.2
  • dependabot/npm_and_yarn/types/node-22.0.3
  • dependabot/npm_and_yarn/types/node-22.1.0
  • dependabot/npm_and_yarn/types/node-22.2.0
  • dependabot/npm_and_yarn/types/node-22.3.0
  • dependabot/npm_and_yarn/types/node-22.4.1
  • dependabot/npm_and_yarn/types/node-22.4.2
  • dependabot/npm_and_yarn/types/node-22.5.0
  • dependabot/npm_and_yarn/types/node-22.5.1
  • dependabot/npm_and_yarn/types/node-22.5.2
  • dependabot/npm_and_yarn/types/node-22.5.3
  • dependabot/npm_and_yarn/types/node-22.5.4
  • dependabot/npm_and_yarn/types/node-22.5.5
  • dependabot/npm_and_yarn/types/node-22.6.1
  • dependabot/npm_and_yarn/types/node-22.7.0
  • dependabot/npm_and_yarn/types/node-22.7.2
  • dependabot/npm_and_yarn/types/node-22.7.3
  • dependabot/npm_and_yarn/types/node-22.7.4
  • dependabot/npm_and_yarn/types/node-22.7.5
  • dependabot/npm_and_yarn/types/node-22.7.6
  • dependabot/npm_and_yarn/types/node-22.7.7
  • dependabot/npm_and_yarn/types/node-22.7.8
  • dependabot/npm_and_yarn/types/node-22.7.9
  • dependabot/npm_and_yarn/typescript-4.0.2
  • dependabot/npm_and_yarn/typescript-5.0.2
  • dependabot/npm_and_yarn/uuid-10.0.0
  • dependabot/npm_and_yarn/uuid-8.0.0
  • dependabot/npm_and_yarn/uuid-9.0.0
  • develop
  • dockerDocs
  • docs
  • docs-madewithaedes
  • drop-old-nodes
  • es6-classes
  • feat#473
  • feat-longerclientid
  • feat/bump_packages
  • feat/drop-bulk-write-stream
  • feat/standards-lint
  • feat/ts-upate
  • feat/update-ci
  • feature/add_concurrent_connection_test
  • feature/add_double_broker_close_test
  • feature/add_metadata
  • feature/add_qos_authorizeforward_test
  • feature/add_server_alias_test
  • feature/drop-readable-stream
  • feature/drop_8
  • feature/drop_pump
  • feature/enhance_sub_basic_test
  • feature/keepalive-limit
  • feature/refactor
  • feature/refactor_eventemitter
  • feature/refactor_into_utils
  • feature/rewrite_readme
  • feature/safe_subscribe
  • feature/safe_unsubscribe
  • feature/sub_empty_messageid
  • feature/switch_to_tap
  • feature/test_auth_fake_timers
  • feature/test_backpressure_published_fn
  • feature/test_keepalive_fake_timers
  • feature/test_messageid_reset
  • feature/test_retain_fake_timers
  • feature/update
  • feature/update_dep
  • feature/update_readme
  • feature/use_fake_timers
  • feature/var_to_const
  • fix#467
  • fix#597
  • fix#719
  • fix#775
  • fix#780
  • fix#connect
  • fix#deps
  • fix#examples
  • fix-801-modify-aedes-handle-and-client
  • fix-dedupe
  • fix-memory-leak
  • fix-race-condition-client-pub-sub
  • fix-release
  • fix-type-error-auth-error-code-typescript
  • fix-types
  • fix-url-package-json
  • fix/enhance-test-on-pr-583
  • fix/issue-767
  • fixBug
  • fixNegate
  • fixQos2
  • fixStandard
  • github-action-benchmark-compare
  • hotfix/add_catch_block
  • hotfix/destory_socket_when_disconnect_sent
  • hotfix/drop_destroySoon
  • hotfix/enhance_keepalive_test
  • hotfix/enhance_topic_test
  • hotfix/fix_duplicate_error_event
  • hotfix/fix_helper
  • hotfix/fix_param_type
  • hotfix/license
  • hotfix/mqtt_client_v4
  • hotfix/not_emit_clientready_when_err
  • hotfix/refactor_ts
  • hotfix/reject_second_connect_packet_in_preconnect
  • hotfix/remove_tests
  • hotfix/rename_to_the_org
  • hotfix/single_level_wildcard_could_be_empty
  • hotfix/stop_connect_actions_if_broker_closed
  • hotfix/tests_on_clientReady
  • hotfix/update_dep_in_examples
  • hotfix/update_dependencies
  • hotfix/update_gitignore_and_dep
  • label-action
  • master
  • migrate-persistence-to-async
  • move-to-ws
  • mqemitter-v4
  • mutable-authenticate-handler-params
  • npmignore
  • opencollective
  • patch-1
  • preconnect-packet
  • protocol-decoder
  • protocol_decoder_fix
  • pubrecLeak
  • qosError
  • readmeClusters
  • refactor_typings
  • refs/heads/dependabot/npm_and_yarn/types/node-20.2.5
  • refs/pull/887/merge
  • refs/tags/v0.45.1
  • refs/tags/v0.45.2
  • refs/tags/v0.46.0
  • refs/tags/v0.46.1
  • refs/tags/v0.46.2
  • refs/tags/v0.46.3
  • refs/tags/v0.47.0
  • refs/tags/v0.48.1
  • refs/tags/v0.49.0
  • refs/tags/v0.50.0
  • refs/tags/v0.50.1
  • refs/tags/v0.51.0
  • refs/tags/v0.51.1
  • refs/tags/v0.51.2
  • refs/tags/v0.51.3
  • release-script
  • remove-protocol-decoding
  • revert-741
  • robertsLando-patch-1
  • robertsLando-patch-2
  • robertsLando-patch-3
  • robertsLando-patch-4
  • robertsLando-patch-5
  • robertsLando-patch-6
  • sharedsubs
  • sharedsubscriptions
  • snyk-upgrade-038cdd47fac710d8ff4ed852484977d7
  • snyk-upgrade-18f12a9031324848720613f8374562b8
  • snyk-upgrade-1ab6cf6ec00ded822ddfcdf7bf28efa5
  • snyk-upgrade-41f31e11113869841bafa60eb1c128dd
  • snyk-upgrade-56cf1a81a44c773464b1157f7ae9ab0e
  • snyk-upgrade-75ead4f0b5a97975b2fb25bc309a6651
  • snyk-upgrade-b3059827234039b9236d6f05468f2609
  • snyk-upgrade-bedcdfc7c0f364bdfcb98832d9bb19f6
  • sys-sub-unsub
  • test#469
  • update-dep
  • update-dep-dev
  • update-dependencies
  • update-readme
  • websockets
  • writeLeaks

15 Jul 2025 06:21AM UTC coverage: 99.572%. Remained the same
16285713122

push

github

web-flow
feat: automate benchmark on PR requests using Github Actions (#1037)

This PR adds Github actions to automate benchmark running on PR requests

It will create a [Github Job
Summary](https://github.blog/news-insights/product-news/supercharging-github-actions-with-job-summaries/)
of the benchmark and add it to the benchmark action (see
https://github.com/moscajs/aedes/actions/runs/16239498783#summary-45853979456
)

The benchmark steps run serialized in the hope that performance on a
single runner does not vary too much.
I have been building testing this using
https://github.com/seriousme/aedes/pull/1 which also shows how it
operates.

It also shows that variation between results is inevitable, even when
running on the same runner and the Aedes code is identical !!

In https://github.com/seriousme/aedes/pull/1 I was able to add the
comment automatically to the PR using
`.github/actions/sticky-pr-comment/action.yml` however if you send a PR
from a fork the GITHUB_TOKEN that runs the actions by default (event:
[pull_request](https://docs.github.com/en/actions/reference/events-that-trigger-workflows#pull_request)
) only has `read` access on the PR for security reasons (see [Pull
Request events for forked
repositories](https://docs.github.com/en/actions/reference/events-that-trigger-workflows#pull-request-events-for-forked-repositories))

This can be fixed by attaching to the event:
[pull_request_target](https://docs.github.com/en/actions/reference/events-that-trigger-workflows#pull_request_target),
however Github notes explicitly: *Avoid using this event if you need to
build or run code from the pull request.*

So for now I used Github Job Summary instead.

Kind regards,
Hans

---------

Co-authored-by: Daniel Lando <daniel.sorridi@gmail.com>

337 of 341 branches covered (98.83%)

Branch coverage included in aggregate %.

827 of 828 relevant lines covered (99.88%)

22902.61 hits per line

Relevant lines Covered
Build:
Build:
828 RELEVANT LINES 827 COVERED LINES
22902.61 HITS PER LINE
Source Files on main
  • Tree
  • List 14
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
16285713122 main feat: automate benchmark on PR requests using Github Actions (#1037) This PR adds Github actions to automate benchmark running on PR requests It will create a [Github Job Summary](https://github.blog/news-insights/product-news/supercharging-gith... push 15 Jul 2025 06:22AM UTC web-flow github
99.57
16267259002 main feat!: migrate to async persistence (#1034) This PR migrates Aedes to use the async persistence interface. It contains the following sub items: - [X] replace all callback calls to persistence by `.then()` calls - [X] move all side effects (sett... push 14 Jul 2025 12:47PM UTC web-flow github
99.57
16111935539 main feat: automate benchmarking (#1035) * feat: automate benchmark testing * group averages * add percentages to report.js * fix missing counter reset in bombingQoS1 * add README.md and examples * update bombingQoS1 * remove benchmark examples ... push 07 Jul 2025 08:31AM UTC web-flow github
99.57
15819870401 main chore: migrate to ES6 classes (#1032) * chore: migrate to ES6 classes * add constructor check to test/basic.js * add teardown to Aedes constructor test * fix basic.js push 23 Jun 2025 09:00AM UTC web-flow github
99.57
15752165255 main chore: update aedes-persistence to 10 (#1031) push 19 Jun 2025 07:30AM UTC web-flow github
99.57
15711633739 main chore: migrate websocket-stream to ws (#1030) push 17 Jun 2025 03:33PM UTC web-flow github
99.57
15700589068 main chore: update dependencies (#1028) * chore: update dependencies * update @types/node,tsd, typescript * remove @typescript-eslint * more updates * update uuid * update CI to node 20,22,24 push 17 Jun 2025 07:11AM UTC web-flow github
99.57
14853667240 main chore: add type commonjs (#1027) push 06 May 2025 07:07AM UTC web-flow github
99.57
10591623618 main Release 0.51.3 push 28 Aug 2024 06:47AM UTC robertsLando github
99.57
10591556488 main fix: memory leak in connected clients counter (#979) Co-authored-by: Uladzimir Danko <uladzimirdanko@uladzimirsmbp14.home> push 28 Aug 2024 06:42AM UTC web-flow github
99.57
See All Builds (439)

Badge your Repo: aedes

We detected this repo isn’t badged! Grab the embed code to the right, add it to your repo to show off your code coverage, and when the badge is live hit the refresh button to remove this message.

Could not find badge in README.

Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

Refresh
  • Settings
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc