No significant code changes in this release. This version was created to release updated docs.
- Update erlang 24.0 -> 24.1.7 (Three latest minor versions supported)
- Update elixir 1.11.4 -> 1.12.3 (Two latest minor versions supported)
- Update ex_doc 0.24.2 -> 0.26.0
- Update credo 1.5.5 -> 1.6.1
- Update nimble_parsec 1.1.0 -> 1.2.0
- Update earmark_parser 1.4.13 -> 1.4.17
- Update makeup_elixir 0.15.1 -> 0.15.2
- Added unsubscribe_and_flush to README
- CI: Check that no unsused deps are present
Bumping to 1.0.0, since this has been used for years in production.
Added features:
- Added Hub.unsubscribe_and_flush, #178
Update dev deps:
- Update erlang 23.1.1 -> 24.0
- Update earmark_parser 1.4.10 -> 1.4.13
- Update ex_doc 0.23.0 -> 0.24.2
- Update elixir 1.11.0 -> 1.11.4
- Update dialyxir 1.0.0 -> 1.1.0
- Update credo 1.5.0-rc.4 -> 1.5.5
- Update makeup_elixir 0.15.0 -> 0.15.1
- Update file_system 0.2.9 -> 0.2.10, 144
Nothing has changed in the code base, but we regularly update the development dependencies and versions of elixir and erlang used for builds in CI.
Releasing new version to get docs out in the latest version of ex_doc
- Update erlang 21.3.6 -> 23.1.1
- Update elixir 1.8.1 -> 1.11.0, 130
- Remove support for elixir 1.9.4
- Update credo 1.0.5 -> 1.5.0-rc.4
- Update ex_doc 0.20.2 -> 0.23.0
- Update makeup_elixir 0.14.0 -> 0.15.0, 130
- Update makeup 1.0.0 -> 1.0.5, 130
- Update nimble_parsec 0.5.0 -> 1.1.0, 130
- Update jason 1.1.2 -> 1.2.2
- Update earmark 1.3.2 -> 1.4.9
- Update dialyxir 0.5.1 -> 1.0.0
- Update erlex 0.2.5 -> 0.2.6
- Use ExDoc 0.20.2
- Use new ExDoc 0.20.1
- Use new ExDoc 0.20.0
- Fixed warnings new to Elixir 1.7
- Fixed race condition if two processes try to start the same channel at the same time by calling subscribe.
- Now has no external dependencies. Removed Phoenix PubSub in favor of in-process state in
Channel
.
This is a somewhat backwards incompatible update:
- Since Phoenix PubSub is no longer used, it is no longer using CRDTs to sync state between nodes. However, Hub was really not compatible with multiple nodes before anyway.
- The return type of
Hub.subscribe/3
andHub.subscribe_quoted/3
is nowChannel.subscription_ref :: {pid, reference}
instead ofreference
. This is now also the type thatHub.unsubscribe
accepts. If the calling code don't require the return value to be areference
it will continue to work as before.
- Runs every channel in its own process to avoid race condition
- Moved organization on Github, https://github.com/vesta-merkur/hub -> https://github.com/wise-home/hub
- Can unsubscribe (#8)
Breaking changes:
- Hub.subscribe/3 and Hub.subscribe_quoted/3 now returns {:ok, reference} instead of :ok
- Attempting to subscribe with the same pattern again from the same pid on the same channel will now make two subscriptions. Before, the old one would be updated.
- Can subscribe to multiple patterns in one subscription (#6)
- Fix edge case pins
- Allow local variables to be pinned in pattern (#3)
First released version.
This was extracted from an existing private project.