Newer versions of KiCad bring changes to file formats and functionality. While effort is made to maintain compatibility, there may ultimately be changes that must made in existing projects to adapt to the changes.

Upgrade from 4.0 to 5.0

Information on upgrading from 4.0 to 5.0 can be found in the KiCad help manual.

Upgrade from any version before 4.0 (also known as "old-stable") to 4.0

There is likely to be some issues if you want to migrate designs from the old stable, revision around bzr revision 4022, which had a particular annoying bug, where layer names were translated, which they should never have been.

Layernames are translated

This issue arises if you used a "old stable" version with a language other than English.

You need to edit all .kicad_pcb files with a text editor (notepad, …​) and change the layer names from Italian/French to their English counterparts. Below is the correspondance of the layer names. Caution: there are more instances to replace than just the layer list. Be sure that you don’t miss any.

New English names

  (15 F.Cu signal)
  (0 B.Cu signal)
  (16 B.Adhes user)
  (17 F.Adhes user)
  (18 B.Paste user)
  (19 F.Paste user)
  (20 B.SilkS user)
  (21 F.SilkS user)
  (22 B.Mask user)
  (23 F.Mask user)
  (24 Dwgs.User user)
  (25 Cmts.User user)
  (26 Eco1.User user)
  (27 Eco2.User user)
  (28 Edge.Cuts user)

Obsolete Italian names

  (15 Rame.Fronte signal)
  (0 Rame.Retro signal)
  (16 Adesivo.Retro user)
  (17 Adesivo.Fronte user)
  (18 Pasta.Retro user)
  (19 Pasta.Fronte user)
  (20 Serigrafia.Retro user)
  (21 Serigrafia.Fronte user)
  (22 Maschera.Retro user)
  (23 Maschera.Fronte user)
  (24 Grafica user)
  (25 Commenti user)
  (26 Eco1 user)
  (27 Eco2 user)
  (28 Contorno.scheda user)

Obsolete French names

  (15 Front signal)
  (0 Back signal)
  (16 Dessous.Adhes user)
  (17 Dessus.Adhes user)
  (18 Dessous.Pate user)
  (19 Dessus.Pate user)
  (20 Dessous.SilkS user)
  (21 Dessus.SilkS user)
  (22 Dessous.Masque user)
  (23 Dessus.Masque user)
  (24 Dessin.User user)
  (25 Cmts.User user)
  (26 Eco1.User user)
  (27 Eco2.User user)
  (28 Contours.Ci user)

Schematic libraries are updated

Be aware that the schematic libries has gotten an overhaul (still in progress), which means that it will easily break your schematics, because the bundled libs takes precedence over the cache lib. What you can do to recover is to remove the libs used in the project and rename the cache lib file, and include that instead. Chris Pavlina has recently made a wizard to help with this issue, this has been merged in the product branch now.