www.delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2016/03/26/11:08:07

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
Date: Sat, 26 Mar 2016 16:11:50 +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] footprint lib database (sql, sqlite, etc.) becomes real?
Message-ID: <alpine.DEB.2.00.1603261554540.7885@igor2priv>
User-Agent: Alpine 2.00 (DEB 1167 2008-08-23)
MIME-Version: 1.0
Reply-To: geda-user AT delorie DOT com

Hi all,

as part of the [mods] patches, I am moving a lot of core code to plugins. 
I'm currently finishing moving the footprint list/search/load code.

This makes it feasible to write footprint plugins that don't take 
footprints from the file system, but from sql, or other databases, or the 
web, or wherever.

Plugins can be substituted, different implementations don't interfere at
all, so there's no "either filesystem or sql" decision forced onto the
user. As a core plugin, it doesn't bit-rot either.

This feature had been discussed many times in great lengths on the list. 
Now we have the chance to make it real, to convert endless/fruiteless 
discussion into actual code.

Does anyone feel like developing a database (e.g. sql, sqlite, 
bdb) footprint lib plugin?

To estimate complexity:

  - the file system (ex-newlib) backend, including pcb-rnd extras 
(parametric footprints) is about 500 lines of code; I expect it to stay 
under 800 lines. I expect a simple db backend to be about the same in 
length.

  - the API currently has 3 entry points; it will grow slightly, but I 
expect there would be no more than 5..8 calls to be implemented.

  - the API is very young and no much code depends on it, I am willing to 
make reasonable changes to it to suit a new plugin.

I'd say the setup cost, API/glue part shouldn't be more than two hours; 
depending how complicated the database part is chosen to be, the whole 
thing should take something between 1..3 days.

Regards,

Igor2

- Raw text -


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