kicad-developers team mailing list archive
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:
> 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.