After getting the major edits for the existing content done, I called the result the first release. As with any creative product, I wasn't happy with some of the corners that still had rough edges, so over the past two weeks I've been fleshing those in and generally working to improve on the consistency of the work.
The updated version, available now for free in PDF and ePub, has several new bits of content:
- content written and updated to review the multicast() and share() operators, how they work, and how to use them.
- worked through what the Record publisher offers (and doesn't offer), including how to serialize & deserialize recorded streams (while this sounds cool, its not ultimately as useful as I hoped it might be)
- added the missing note that swift's new Result type could also be used as a publisher, courtesy of a little extension that was added in Combine.
- updated some of the details of throttle and debounce with the specifics of delays that are incurred in timing, after having validated the theories with some unit tests (spoiler: debounce always delays the events by a short bit, but throttle doesn't have much of an impact)
The new version is 1.1, tagged in the underlying repository if you're so inclined to review/poke at the unit tests beyond the narrative details I shared in the book itself.
Enjoy, and thank you for supporting Using Combine!