← Back to team overview

kicad-developers team mailing list archive

Re: New pcbnew features and versioning

 

Honestly I don't see the advantage to using Semantic Versioning for an
internal file format version... and using 2016.04.12 instead of 20160412
just seems like an exercise in making the parser more complicated. Could
you explain *why* this would be a good thing?
On Apr 12, 2016 1:51 AM, "David Cary" <d.cary+2012@xxxxxxxx> wrote:

> Please at least consider Semantic Versioning ( http://semver.org/ ).
> And I recommend that if you figure out any way to improve on SemVer,
> please speak up so maybe the next version of SemVer can incorporate
> those improvements.
>
> I have enjoyed the discussion of new features and various ideas for
> versioning, and I encourage you to discuss them further.
>
> I am happy that the native KiCad file formats already avoid many
> problems mentioned in
> "Designing File Formats" http://www.fadden.com/tech/file-formats.html
> .
> Are there any remaining recommendations in that essay that maybe we
> should include in future versions of KiCad file formats?
>
> If hypothetically we did use Semantic Versioning,
> would it be better to do (a) or (b)?:
> (a) have a single KiCad version number that KiCad writes into every
> new file it creates, or
> (b) have a separate and independent version number for each part of
> KiCad -- the Eeschema version number written into new schematic files,
> a separate Pcbnew version number written into new footprint and PCB
> layout files, etc.
>
> (How many independent version numbers could option (b) require?)
>
> On Thu, Apr 7, 2016 at 1:04 PM, Chris Pavlina <pavlina.chris@xxxxxxxxx>
> wrote:
> > What about using the date the change was made as a "version number"? Can
> > integerize it like 20160407 for example. This allows easy
> cross-referencing of
> > a format version with the revision that it was made in, and is
> guaranteed to
> > increase monotonically if you use a YMD format :)
>
> I agree with Wayne that it's more meaningful than most version strings.
>
> My understanding is that "integerized date" without punctuation is
> more commonly known as the "ISO 8601 date basic format".
>
> Recently I've been putting a date like that on the silkscreen of my
> PCBs. (I use the "ISO 8601 date extended format" like 2016-04-07, the
> format produced by the KiCad "%D" format symbol).
>
> Is it possible to combine that with Semantic versioning, getting
> something like 2016.04.07 ?
> (This assumes we won't make a breaking change in the file format more
> than once a year -- optimistic? :-)
>
> --
> David Cary
> +1(918)813-2279
> http://OpenCircuits.com/
> http://david.carybros.com/
>

Follow ups

References