Shipyard 0.7
This release should require very little to no changes to user code.
Guide
The guide continues to expand with a new Learn by example section.
Tracking new design
This is what took the most time, and in the end, the new design is syntactically identical to 0.6 for most users.
The new design allows for the easy-to-use derive of 0.6 while allowing downstream crate to specify additional tracking on a component they didn't define.
Let's take an example. You have 3 crates, crateA and crateB both depend on crateC.
crateA and crateB both use a component T that is defined in crateC. crateA cares about modification on T but crateB and crateC don't.
With 0.6 you would have to always track T modifications, in all three crates. The only place tracking could be defined was crateC.
With 0.7 you can omit tracking from crateB and crateC. And only track modifications in crateA.