8. cschem implementation - ripple annotation

{imp8:0} The back annotation is an optional feature. Cschem supports it, some of the 3rd party software support it and the user may choose to use it. The user is also free to choose the traditional, "tell me what I need to change on the schematics, then I'll forward annotate" method.

{imp8:1} The ripple annotation is just clever use of the back annotation plus some netpatch management. It is probably a good idea to put the schematics, the project file and all patches in the same version control system.

{imp8:2} With such a setup a current snapshot of the VCS and a run of cschem core on it, e.g. as a simple 'make' or 'make pcb' or 'make spice' will produce up-to-date forward annotation packs at any member of the team.

{imp8:3} The advantages of ripple annotations are:

{imp8:4} In theory, as an extreme example, one may even use the system without schematics: build a smallish simulation by hand, add the right footprint and pinout attributes, back annotate it against an empty abstract model then forward annotate to PCB layout. This setup bypasses 90% of cschem and (ab)uses cschem core as a tool for collecting netpatches and converting them to different netlist formats.