delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2017/12/09/05:24:59

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: <alpine.DEB.2.00.1712091124590.27212@igor2priv>
User-Agent: Alpine 2.00 (DEB 1167 2008-08-23)
MIME-Version: 1.0
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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019