Change design block file ext to kicad_block[s]
Fully include design blocks in project archives
schematic design blocks are a .kicad_blocks folder (library), containing
a .kicad_block folder (block), containing a .kicad_sch file (schematic
fragment) and a .json file (metadata). The .kicad_sch file is already
covered in the archived extension list, but the json needs to be
included.
As a side effect, this will pick up any other json file in the project
directory.
Also archive design block library tables
Makes a test backup file and compares to the existing zip file backup to
see if the files have changed since it was made. If so, the new file is
kept. If not, we discard the new file and continue
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12453
Do not store twice files with extension .gm?? in zip files
Previous commit did not store files like *.gm12, that can be existing when
Gerber files come from another ECAD tool, and allowed duplicate files like *.g1
wxString::Format is redundant in a wxLogXXX call.
Error messages should generally be translatable.
Error messages should use generally consistent sentence forms.
ZIP archives may have entries that are only directories. We should not
try to extract this entries (they have no length); instead, we merely
create the path and continue
wx/wx.h includes all wxWidgets .h files, and sometimes creates collision
names in #define between kicad and windows headers
Moreover, blindly including a lot of useless files is compil time consuming