Go to file
David Ansari 81ee05f9ce Convert rabbit_stream_reader into state machine
This is pure refactoring - no functional change.

Benefits:
* code is more maintainable
* smaller methods (instead of previous 350 lines listen_loop_post_auth function)
* well defined state transitions (e.g. useful to enforce authentication protocol)
* we get some gen_statem helper functions for free (e.g. debug utilities)

Useful doc: https://ninenines.eu/docs/en/ranch/2.0/guide/protocols/
2021-06-25 15:07:34 +02:00
.github Initial Security Policy document 2021-06-25 16:40:33 +10:00
deps Convert rabbit_stream_reader into state machine 2021-06-25 15:07:34 +02:00
doc Add files to specify license info 2020-08-18 12:42:43 -07:00
mk Delete stats make target 2021-06-24 21:59:09 +10:00
packaging Build two OCI images 2021-06-24 14:19:31 +02:00
scripts fix hostname(1) calls on Solaris 2021-06-17 13:23:05 +02:00
.dockerignore dockerignore deps 2021-03-18 15:04:39 +00:00
.gitignore Stream common library 2021-06-11 17:24:00 +02:00
.travis.yml Travis CI: Restore correct configuration 2020-03-31 12:16:20 +02:00
.travis.yml.patch Travis CI: Restore correct configuration 2020-03-31 12:16:20 +02:00
BAZEL.md Suggest --incompatible_strict_action_env in Bazel readme 2021-06-21 09:52:42 +02:00
BUILD.bats Run the "bats" tests for deps/rabbit in bazel 2021-05-14 10:39:25 +02:00
BUILD.bazel Remove rabbitmq_stream_prometheus plugin 2021-06-22 14:14:26 +01:00
BUILD.inet_tcp_proxy Add a partial Bazel build (#2938) 2021-03-29 11:01:43 +02:00
BUILD.osiris Sync osiris make/bazel build 2021-06-24 21:59:09 +10:00
BUILD.ranch Test rabbitmq_mqtt with bazel 2021-04-19 09:50:42 +02:00
BUILD.trust_store_http Add rabbitmq_trust_store to bazel 2021-05-07 13:01:01 +02:00
CODE_OF_CONDUCT.md URL Cleanup 2019-03-20 03:22:38 -05:00
CONTRIBUTING.md Add instructions for running specific test suites, and only running certain tests in GH actions 2020-11-20 07:41:58 -08:00
LICENSE Switch to MPL 2.0 2020-07-17 16:10:14 +03:00
LICENSE-APACHE2 Switch to MPL 2.0 2020-07-17 16:10:14 +03:00
LICENSE-MPL-RabbitMQ Revert drop of Exhibit B on MPL 2.0 2020-07-20 17:03:37 +01:00
Makefile Delete stats make target 2021-06-24 21:59:09 +10:00
PKG_LINUX.md URL Cleanup 2019-03-20 03:22:38 -05:00
PKG_WINDOWS.md Windows doc tweaks 2018-11-08 13:48:46 -08:00
README.md Update build status badge in README 2021-04-08 10:03:14 +02:00
SERVER_RELEASES.md Move (copy) the README file back into place 2020-11-13 15:01:21 +01:00
WORKSPACE.bazel Mark additional suites as flaky 2021-06-17 13:42:22 +02:00
elixir_home.bzl Add a partial Bazel build (#2938) 2021-03-29 11:01:43 +02:00
erlang.mk erlang.mk: Update to add support for Rebar lock file version 1.2.0 2021-03-29 11:56:59 +02:00
erlang_ls.config erlang_ls config file for better dev experience 2021-03-12 11:53:16 +01:00
plugins.mk Remove rabbitmq_stream_prometheus plugin 2021-06-22 14:14:26 +01:00
rabbitmq-components.mk Remove rabbitmq_stream_prometheus plugin 2021-06-22 14:14:26 +01:00
rabbitmq.bzl Revert "Default all `rabbitmq_integration_suite` to flaky in bazel" 2021-06-24 21:59:09 +10:00
rabbitmq_home.bzl Allow `bazel run rabbitmq-diagnostics` 2021-06-02 17:23:48 +02:00
rabbitmq_run.bzl Add a partial Bazel build (#2938) 2021-03-29 11:01:43 +02:00
rabbitmqctl.bzl Make it possible to `bazel run rabbitmq-plugins` 2021-05-26 15:40:20 +02:00
workspace_helpers.bzl Use gen_batch_server from hex.pm 2021-06-24 21:59:09 +10:00

README.md

Test

RabbitMQ Server

RabbitMQ is a feature rich, multi-protocol messaging broker. It supports:

  • AMQP 0-9-1
  • AMQP 1.0
  • MQTT 3.1.1
  • STOMP 1.0 through 1.2

Installation

Tutorials & Documentation

Some key doc guides include

Commercial Support

Getting Help from the Community

Contributing

See CONTRIBUTING.md and our development process overview.

Questions about contributing, internals and so on are very welcome on the mailing list.

Licensing

RabbitMQ server is licensed under the MPL 2.0.

Building From Source and Packaging

(c) 2007-2021 VMware, Inc. or its affiliates.