- Reduce default batch size to 100.
- Fix sqlite3 support (#160).
- Drop support for Ruby 1.8.
- Improve APNs certificate validation errors (#192) @mattconnolly).
- Initial support for Windows Phone notifications (#191) (@matiaslina).
- Add two new GCM reflections: gcm_delivered_to_recipient, gcm_failed_to_recipient (#184) (@jakeonfire).
- Fix migration issues (#181) (@jcoleman).
- Add GCM gcm_invalid_registration_id reflection (#171) (@marcrohloff).
- Feature: wakeup feeder via UDP socket (#164) (@mattconnolly).
- Fix reflections when using batches (#161).
- Only perform APNs certificate validation for APNs apps (#133).
- The deprecated on_apns_feedback has now been removed.
- The deprecated airbrake_notify config option has been removed.
- Removed the deprecated ability to set attributes_for_device using mass-assignment.
- Silence unintended airbrake_notify deprecation warning (#158).
- Add :dependent => :destroy to app notifications (#156).
- Rails 4 support.
- Add apns_certificate_will_expire reflection.
- Perform storage update in batches where possible, to increase throughput.
- airbrake_notify is now deprecated, use the Reflection API instead.
- Fix calling the notification_delivered reflection twice (#149).
- Fix Rails 3.0.x compatibility (#138) (@yoppi).
- Ensure Rails does not set a default value for text columns (#137).
- Fix error in down action for add_gcm migration (#135) (@alexperto).
- Fix compatibility with postgres_ext (#104).
- Add ability to switch the logger (@maxsz).
- Do not validate presence of alert, badge or sound - not actually required by the APNs (#129) (@wilg).
- Catch IOError from an APNs connection. (@maxsz).
- Allow nested hashes in APNs notification attributes (@perezda).
- GCM: collapse_key is no longer required to set expiry (time_to_live).
- Add reflection for GCM canonical IDs.
- Add Rapns::Daemon.store to decouple storage backend.
- Rapns.apns_feedback for one time feedback retrieval. Rapns.push no longer checks for feedback (#117, #105).
- Lazily connect to the APNs only when a notification is to be delivered (#111).
- Ensure all notifications are sent when using Rapns.push (#107).
- Fix issue with running Rapns.push more than once in the same process (#106).
- Rapns.reflect API for fine-grained introspection.
- Rapns.embed API for embedding Rapns into an existing process.
- Rapns.push API for using Rapns in scheduled jobs.
- Fix issue with integration with ActiveScaffold (#98) (@jeffarena).
- Fix content-available setter for APNs (#95) (@dup2).
- GCM validation fixes (#96) (@DianthuDia).
- Fix compatibility with Rails 3.0.x. Fixes #89.
- Add support for Google Cloud Messaging.
- Fix Heroku logging issue.
- Support content-available (#68).
- Append to log files.
- Fire a callback when Feedback is received.
- Release db connections back into the pool after use (#72).
- Continue to start daemon if a connection cannot be made during startup (#62) (@mattconnolly).
- Don't exit when there aren't any Rapns::App instances, just warn (#55).
- JRuby support.
- Explicitly list all attributes instead of calling column_names (#53).
- Support MultiJson < 1.3.0.
- Make all model attributes accessible.
- Fix delivery when using Ruby 1.8.
- MultiJson support.
- Support for multiple apps.
- Hot Updates - add/remove apps without restart.
- MDM support.
- Removed rapns.yml in favour of command line options.
- Started the changelog!