Chris, I looked at this patch and I thought you were going to add a check to warn the user that the board file may not load. Your patch will refuse to load any previous versions even if the file does not contain any new features. I'm not sure flat out rejecting newer board versions is a good idea. I would rather warn the user that it might fail to load and than fail if there is anything that the parser can't handle. If there are no new features in the file, then it should open as expected.
Wayne On 4/9/2016 11:42 AM, Chris Pavlina wrote: > Here's a patch that checks the PCB file format version against the currently > supported one, and displays a message explaining the situation if the PCB file > is too recent. I assumed YYYYMMDD format for the version. Message looks like > this: > > KiCad was unable to open this file, as it was created with a more recent > version than the one you are running. To open it, you'll need to upgrade > KiCad to a more recent version. > > File: <filename> > Date of KiCad version required (or newer): <format version, reformatted > as date in locale> > > A couple changes still have to be made - this is only for comment, not to > commit. > > 1. Also check footprints - we'll have to add versioning to those, as it's not > there at all right now as JP said. > 2. Use a more friendly error dialog without the "IO_ERROR" and source code > location, at least in non-debug builds. That will frighten people. :) > > On Thu, Apr 07, 2016 at 09:47:41AM -0400, Chris Pavlina wrote: >> Hi all, >> >> I'm targeting this email primarily at Wayne as versioning and release policy >> is >> involved. >> >> We've got a bit of a problem right now. We're currently adding features to >> the >> pcbnew format - JP just merged rounded-rect pads and has a patch in >> development >> for custom pads, and I'm looking at a patch to add angled fields. Problem is: >> >> 1. We're not bumping the file format version, so even though we're writing >> files that contain features (actual COPPER features!) that old versions won't >> understand, we're not marking them as such, so they'll either give nasty >> file-corrupted errors, or fail to load silently. >> >> 2. Even if we did, pcbnew currently ignores the format version. >> >> >> I propose the following: >> >> 1. Patch pcbnew to check the format version and give a friendly "your KiCad >> may >> be out of date"-style warning if it's too high a number. >> >> 2. Accelerate this patch to a minor stable release to get it out there before >> these new features make it into the next major release. >> >> 3. Adopt a policy of properly bumping the version number any time a feature >> is >> added. >> >> Thoughts? >> >> -- Chris >> >> >> _______________________________________________ >> Mailing list: https://launchpad.net/~kicad-developers >> Post to : kicad-developers@lists.launchpad.net >> Unsubscribe : https://launchpad.net/~kicad-developers >> More help : https://help.launchpad.net/ListHelp _______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp