Releases: hedwig-im/hedwig
Releases · hedwig-im/hedwig
v1.0.0
- Improvements
- Handle disconnects with
handle_disconnect/2
in the robot module. See docs
for details. - Responders are now
GenServer
s.
- Handle disconnects with
- Backwards Incompatible Changes
- The
user
field onHedwig.Message
is now aHedwig.User
struct.
This should aid in consistency across adapters. after_connect/1
is nowhandle_connect/1
. See the docs for details.- Adapters should now call
Hedwig.Robot.handle_in/2
rather thanhandle_message
for incoming messages. See the docs for details. Hedwig.Registry
has been removed. Alternatives are outlined in the README.GreatSuccess
andShipIt
responders have been moved in theexamples
directory and no longer shipped with Hedwig.
- The
v1.0.0-rc.4
Breaking Changes
- The Panzy responder has been removed. You will need to remove it from your bot's list of responders (if you had previously had it configured).
- The
adapter
field has been removed from theHedwig.Message
struct. - Robots are now a proper
GenServer
.
Diff: v1.0.0-rc3...v1.0.0-rc.4
v1.0.0-rc3
Move TestRobot
to lib
Diff: v1.0.0-rc2...v1.0.0-rc3
v1.0.0-rc2
Move RobotCase
to lib
in order to make testing easier.
Diff: v1.0.0-rc1...v1.0.0-rc2
v1.0.0-rc1
Diff: v1.0.0-rc0...v1.0.0-rc1
v1.0.0-rc0
Diff: v0.3.0...v1.0.0-rc0
v0.3.0
- Documentation Improvements
- Added
Hedwig.Stanza.presence/2
- Increased timeout in
Hedwig.Conn
to30_000
ms.
Diff: v0.2.0...v0.3.0
v0.2.0
- Improvements
Hedwig.whereis/1
can be used to return thepid
of a client by thejid
- Clients are now supervised via
:simple_one_for_one
and can be
started/stopped viaHedwig.start_client/1
andHedwig.stop_client/1
- Supports inband registration via
Stanza.set_inband_register/2
- Supports subscribing to a PubSub node via
Stanza.subscribe/3
- Backwards Incompatible Changes
- Clients are no longer configured via
config.exs
. Instead you must now manage
starting/stopping clients viaHedwig.start_client/1
andHedwig.stop_client/1
- Clients are no longer configured via
Release Diff: scrogson/hedwig@v0.1.0...v0.2.0
v0.1.0
- Bug Fixes
- Default
type
for apresence
stanza is nownil
- Default
type
for amessage
stanza is nownormal
- Feature negotiation is now handled a second time if the connection is upgraded to TLS.
- Default
- Improvements
- Authentication has been cleaned up and allows you to configure your preferred auth mechanism.
- Support
ANONYMOUS
auth mechanism. Stanza.iq/{2,3}
-iq
stanzas can now be sent to a specifiedjid
.Stanza.get_roster/0
to fetch the client's roster.Stanza.get_vcard/1
to fetch the vcard of a specifiedjid
.Stanza.disco_info/1
to discover features and capabilities of a server or client.Stanza.disco_items/1
to discover features and capabilities of a server or client.Stanza.presence/1
to allow a client to becomeunavailable
.JID
now implementsString.Chars.to_string/1
protocol.ignore_from_self?
option to allow stanzas to be processed for messages sent by the client. Defaults tofalse
.- Clients can now be stopped cleanly. Send a message of
{:stop, reason}
and the client will send anunavailable
presence and close the stream. - Stanza parsing is now more robust. Parses into appropriate structs and includes a
payload
key for access to theraw
parsed data structure.
Release Diff: scrogson/hedwig@v0.0.3...v0.1.0
Initial Release
v0.0.3 Correct spelling of 'licenses'