X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com Date: Sun, 1 Oct 2017 18:50:25 +0200 (CEST) X-X-Sender: igor2 AT igor2priv To: geda-user AT delorie DOT com X-Debug: to=geda-user AT delorie DOT com from="gedau AT igor2 DOT repo DOT hu" From: gedau AT igor2 DOT repo DOT hu Subject: [geda-user] [pcb-rnd] The Big Data Model Cleanup - midpoint summary Message-ID: User-Agent: Alpine 2.00 (DEB 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; format=flowed; charset=US-ASCII Reply-To: geda-user AT delorie DOT com Hi all, all the work with the layer rewrite, subcircuits and terminals are not just random features. These are all parts of a bigger plan, an idea that has been floating on the geda-user mailing list for many years: a data model cleanup. This idea had many manifestations from requests of footprint features that could not be fulfilled because of the limited data model to support of hierarchical netlists. Seemingly unrelated, random features that in turn lead to the fundamental limitations of the old data model. After about a year of work, I decided to draw a full roadmap of the effort: http://repo.hu/projects/pcb-rnd/developer/new_model_progress/roadmap.svg Green items are done, red items will be done during the next months. By the number of items we are about halfway through the plan, but the first few items (new native file format, layer rewrite, layer compositing and subcircuits) needed much more work than some of the later items will. I'd say by the amount of work we are about 70..75% done. What we'd have at the end: - a layer model that supports compositing and can capture reality more closely (already done) - unlimited footprints by subcircuits (already done) - unlimited pad shapes (already done, with subcircuit "heavy model") - pad stacks: much less limited vias/pins/light-model-pads with bbvia - a much simpler, more orthogonal, easier to understand and extend data model - more precise import/export from/to other EDA systems as our model will support most features other EDA systems do - a lot of element-related special-case code removal -> smaller, cleaner code Regards, Igor2