X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com Date: Sat, 9 Dec 2017 11:35:34 +0100 (CET) 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] symbolic milestone: 2/3 rnd, 1/3 legacy 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 Hello geda-users, pcb-rnd has reached a symbolic milestone: we are beyond 66.667% in the code change statistics, which means more then 2/3 of the C source code lines are either new or got a relevant change since the fork. (Indentation or moving the code around is considered irrelevant; for more details on how/why this rate is calculated, please see http://repo.hu/projects/pcb-rnd/devlog/20171117_chgstat.html ) To celebrate the symbolic event, I've implemented an "invoke external editor" action. This makes it possible to click on a subcircuit and get a second pcb-rnd (or a text editor) started up, the object edited, saved, and auto-replaced on the original board with the edited version. Sort of in-place footprint instance edition, without copy to buffer, save buffer, breakup, rebuild, etc. I think this could make a lot of user's life easier - this is my way to say thank you to the pcb-rnd community. 66.667% is just a number, it is not significant in itself. What is important is all the new features and _major_ refactoring/cleanup behind the numbers, which often resulted in fixing decade old bugs or misfeatures. I believe the last 1 year of pcb-rnd was among the top 3 most productive years in project history, including PCB, back to the mid 90's! It is not practical to list all the changes we did since the fork - the list would be so huge nobody would read it. To pick a few highlights randomly: 1. Full data model rewrite: more flexible layer model (hello editable mask and paste layers!), subcircuits (hello footprints with no restrictions!), padstacks (hello arbitrary, per layer type shaped vias/pins/pads and blind/buried vias!), font upgrade (hello multiple fonts, arcs and polygons in fonts!). And our own file format that can keep up with the innovation. 2. modularized I/O: file format compatibility with kicad, eagle, protel, hyperlynx, fidocad and gEDA/pcb; schematics import from kicad, LTSpice, TinyCAD and gEDA/gaf. And more (see the bridges drawing on our home page!). 3. Code modularization: majority of the code moved out from core to optional plugins. 4. Build system: simpler, faster, more portable. 5. Feature support: advanced search with a query language, property editor, flag editor, edakrill/gedasymbols integration, use boards as footprint libs, improved rubber band mode, shape generator. 6. Rewrite of old code to be more portable and depend on minilibs instead of glib. This also improves compilation time and long term stability of the project. Replaced lists, hashes, vectors, dynamic strings, the undo administration, the plugin system. What we plan for 2018: this list would be too long too. Picking three: 1. Remove the retired old data model from the code base: elements, pins, pads, vias, element-lines, element-arcs. 2. Rewrite find.c from scratch, because the new data model provides much better administration of parent-children/subtree relations. 3. more I/O plugins - pcb-rnd is the EDA that eventually is going to read and write every reasonable file format out there. If you haven't yet: consider switching to pcb-rnd. It is compatible; it fixes decade old bugs; it is progressing fast. It is the most dynamically growing software & community around gEDA. We need a lot of user contribution (directed user testing) - that's an easy way to instantly become a valuable contributor. Sing up today! Web: http://repo.hu/projects/pcb-rnd pcb-rnd 1.2.7 is to be released right before the end of the year. Regards, Igor2