Releases: mochidev/swift-webpush
Version 0.4.0
Overview
This release adds support for message deduplication "topics" and automatic retries for certain push service errors, and adds relevant networking configurations for different use cases. HTTPError
has also been renamed to PushServiceError
.
The library is now feature complete, and has complete testing and documentation coverage. Unless any major issues pop up over the next few weeks, this form of the API will likely be tagged with a 1.0.0
🎉.
What's Changed
- Renamed HTTPError to PushServiceError by @dimitribouniol in #48
- Topics by @dimitribouniol in #49
- Retries and Network Configuration by @dimitribouniol in #50
- Custom HTTP Client by @dimitribouniol in #51
- Documentation Completeness by @dimitribouniol in #52
Full Changelog: 0.3.3...0.4.0
Version 0.3.3
Overview
This release adds comprehensive documentation to help you get started using WebPush in your web apps!
What's Changed
- Documentation by @dimitribouniol in #45
Full Changelog: 0.3.2...0.3.3
Version 0.3.2
Overview
This release makes all error types Equatable and Sendable, making them easier to use in your own tests. Additionally, the WebPush library now enjoys full test coverage!
What's Changed
- Full Test Coverage by @dimitribouniol in #42
Full Changelog: 0.3.1...0.3.2
Version 0.3.1
Overview
This release adds a new MessageTooLarge
error that can be caught to retry smaller messages, and a few new mocked types for Subscriber
to make testing with WebPush
easier.
What's Changed
- MessageTooLarge, more Mocks by @dimitribouniol in #40
Full Changelog: 0.3.0...0.3.1
Version 0.3.0
##Overview
This release introduces some breaking changes to make the API a bit more readable:
VAPID.Configuration.mocked
has been renamed toVAPID.Configuration.mockedConfiguration
to match other mocked methods.WebPushManager.init(..., logger:, ...)
has been renamed toWebPushManager.init(..., backgroundActivityLogger:, ...)
to better match the types of logging it is responsible for.- The various
send(...)
methods now have alogger:
parameter.
In addition to these API renames, this release also adds a number of improvements to documentation, tests, and logging. You can also use WebPushManager
without a service as it will automatically shut down its HTTP client when it falls out of scope.
What's Changed
- VAPID Token Documentation by @dimitribouniol in #32
- Key Validation Tests by @dimitribouniol in #33
- More Test Coverage by @dimitribouniol in #34
- Mocked Configuration Rename by @dimitribouniol in #35
- Automatic Shutdown by @dimitribouniol in #36
- Better Logging by @dimitribouniol in #37
Full Changelog: 0.2.1...0.3.0
Version 0.2.1
Overview
This release fixes a warning related to message expiration even when default values are used.
What's Changed
- Errant Warnings by @dimitribouniol in #29
Full Changelog: 0.2.0...0.2.1
Version 0.2.0
Overview
This release adds a new dedicated type for message expiration, and swaps the definitions of VAPID
and VoluntaryApplicationServerIdentification
so the latter is now the type alias. Documentation has also been expanded for several members, and test coverage continues to increase.
What's Changed
- Expirations by @dimitribouniol in #22
- Urgency by @dimitribouniol in #24
- HTTP Deadlines by @dimitribouniol in #23
- RFC Doc Style by @dimitribouniol in #25
- VAPID Definition Refactor by @dimitribouniol in #26
- Sanity Test by @dimitribouniol in #27
Full Changelog: 0.1.4...0.2.0
Version 0.1.4
Overview
This release adds a new initializer to VAPID.Key
for decoding directly from a Base64 string, along with some improvements to documentation and test coverage in general.
What's Changed
- More Tests by @dimitribouniol in #19
Full Changelog: 0.1.3...0.1.4
Version 0.1.3
Overview
This release adds a new vapid-key-generator
helper tool for generating keys outside of your application server's environment, and greatly expands on the configuration's documentation.
What's Changed
- Tooling by @dimitribouniol in #14
Full Changelog: 0.1.2...0.1.3
Version 0.1.2
Overview
This release ads proper error types to check when decoding configurations or sending push messages, namely BadSubscriberError()
, which needs to be checked to prevent push services from rate limiting and block-listing your server.
What's Changed
- Fix documentation link by @natanrolnik in #11
- Errors by @dimitribouniol in #12
New Contributors
- @natanrolnik made their first contribution in #11
Full Changelog: 0.1.1...0.1.2