← Back to team overview

kicad-developers team mailing list archive

Re: exploiting human readability

 

> Where do they come from? and component versioning:
> -------------------------------------------------
> The ability to reference an external component by a GUID (globally
> unique ID) of some kind lets you pull in components from anywhere in the
> world.  A GUID inherently needs to respect versioning.  That is to say,
> if you make an edit to a component that somebody else depends on, you
> still have to provide the original version also.
>
> Enter the version control system.  Since each component and component
> source code fragment exists in its own file, a source code control
> system is used to house these files, and they can be accessed by using a
> SCCS repo, file name and version number, over the Internet, or locally.
>
> One possibility for this is to build a tcp socket oriented bridge into
> Bazaar's access API, which I assume lets you access any version of any
> archived file.  Only one such server is needed for the "kicad supplied
> libraries".  Behind the scenes the bridge/server simply uses launchad's
> bazaar based repo.
>   

Well SVN is on the table too:

http://svnbook.red-bean.com/en/1.1/ch08s02.html
http://rapidsvn.tigris.org/svncpp.html
http://svnkit.com/
http://subclipse.tigris.org/
http://www.theserverside.com/news/thread.tss?thread_id=37406
http://www.indicthreads.com/5095/subversionj-svnj-to-provide-a-java-api-to-leverage-subversion/


BZR options:

http://people.canonical.com/~mwh/bzrlibapi/bzrlib.html


> The loading of code fragments from afar need to be cached in RAM, so the
> concept of a *library* does not go away.  A library is a RAM container
> that caches those things coming from afar in order to enhance speed. 
> But remember, kicad supplied libraries are essentially "read only" (for
> all but those with the generating scripts).  So putting them under SCCS
> and in launchpad as a primary place of dwelling is reasonable for those
> with Internet access.  Others could check out the library branch.
>   



EESCHEMA --> LIBRARY --> (SERVER or BRIDGE) ---> REPO

SERVER or BRIDGE is located possibly on your computer or shared on the
web, say like a websvn kind of thing.  We only need a read only
interface for the kicad supplied components.

The LIBRARY is basically a "cache" of components consisting of both
their A) parsed/binary and B) un-parsed/s-expr forms.


Dick




Follow ups

References