This is the latest commit in the series, it fixes (almost) all the problems with missing and circular dependencies for typing. The only 2 unsolved problems are: - `lg` dependency for `rabbit` - the problem is that it's the only dependency that contains NIF. And there is no way to make dialyzer ignore it - looks like unknown check is not suppressable by dialyzer directives. In the future making `lg` a proper dependency can be a good thing anyway. - some missing elixir function in `rabbitmq_cli` (CSV, JSON and logging related). - `eetcd` dependency for `rabbitmq_peer_discovery_etcd` - this one uses sub-directories in `src/`, which confuses dialyzer (or our bazel machinery is not able to properly handle it). I've tried the latest rules_erlang which flattens directory for .beam files, but it wasn't enough for dialyzer - it wasn't able to find core erlang files. This is a niche plugin and an unusual dependency, so probably not worth investigating further. |
||
|---|---|---|
| .. | ||
| include | ||
| mk | ||
| src | ||
| test | ||
| .gitignore | ||
| BUILD.bazel | ||
| CODE_OF_CONDUCT.md | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| LICENSE-BSD-recon | ||
| LICENSE-MIT-Erlware-Commons | ||
| LICENSE-MIT-Mochi | ||
| LICENSE-MPL-RabbitMQ | ||
| Makefile | ||
| README.md | ||
| codegen.py | ||
| development.post.mk | ||
| development.pre.mk | ||
| erlang.mk | ||
| rabbitmq-components.mk | ||
README.md
RabbitMQ Common
This library is shared between RabbitMQ server, RabbitMQ Erlang client and other RabbitMQ ecosystem projects.