kicad/pcbnew
Maciej Suminski 9e80eff90a Eagle importer: two stage netlist update
After Eagle project import, schematic and board netlists are inconsistent:
footprints do not have sheetpaths assigned, schematics are unannotated.

One can update netlist either by references or timestamps, but timestamps
are empty in pcbnew, and updating by reference must by preceded by
annotation which may lead to broken links between board and schematics
(Eagle does not require references to end with a number, so KiCad annotater
will add numbers in such cases).

To fix the problem, there is a two step netlist update:
- update by reference without the annotation step, to assign
correct sheetpaths to footprints
- update by timestamp, after symbols are annotated, in order to
update references in the board

Fixes: lp:1748502
* https://bugs.launchpad.net/kicad/+bug/1748502
2018-02-16 19:37:23 +01:00
..
autorouter fix code after renaming files 2018-01-29 22:00:44 +01:00
dialogs Remove unused code. 2018-02-16 09:02:25 +01:00
exporters Pcbnew: Fabrication Outputs: Footprint position (.pos) file CSV format : double quote ref, value and package name. 2018-02-03 21:30:09 +01:00
github Fix quotes in UI messages 2017-12-15 07:33:07 -05:00
import_dxf fix code after file renaming 2018-01-31 09:24:02 +01:00
microwave fix code after renaming files 2018-01-29 22:00:44 +01:00
pcad2kicadpcb_plugin Fix unnecessary value parameter detected by clang-tidy. - Replace value parameter by const reference parameter or move-assignement in some cases 2018-01-09 18:55:51 -05:00
python Minor Python pad array improvement. 2018-01-06 10:39:32 -05:00
router PNS: disable autopanning in case of an error 2018-02-16 11:28:37 +01:00
specctra_import_export Specctra export: export roundrect pads with the right shape 2018-02-03 18:50:55 +01:00
swig Enable exception handler for python LoadBoard function 2018-02-10 18:34:20 -05:00
tools pcbnew: add align center and align middle tools and related icons 2018-02-16 12:01:01 -05:00
CMakeLists.txt rename files 2018-02-01 11:05:01 +01:00
Doxyfile_python
Doxyfile_xml
Info.plist
action_plugin.cpp fix code after renaming files 2018-01-30 15:34:09 +01:00
action_plugin.h fix code after renaming files 2018-01-30 15:34:09 +01:00
append_board_to_current.cpp Centralize zoom-to-fit code. 2018-02-13 20:06:03 -05:00
array_creator.cpp Renamed D_PAD::{Set,Get}PadName() to D_PAD::{Set,Get}Name() 2017-09-19 18:23:50 +02:00
array_creator.h
attribut.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
block.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
block_module_editor.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
board_commit.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
board_commit.h refactoring: make BOARD_COMMIT independent from pcbnew 2017-11-03 20:02:06 +01:00
board_connected_item.cpp rename files 2018-02-02 21:57:12 +01:00
board_connected_item.h rename files 2018-02-02 21:57:12 +01:00
board_design_settings.cpp rename files 2018-02-02 21:57:12 +01:00
board_item_container.h Doxygen comment improvements. 2017-06-13 19:47:46 -04:00
board_items_to_polygon_shape_transform.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
board_netlist_updater.cpp fix code after renaming files 2018-01-30 15:34:09 +01:00
board_netlist_updater.h Fixed compilation warnings 2017-06-23 11:36:05 +02:00
build_BOM_from_board.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
class_board.cpp Fix code after renaming files 2018-01-29 16:40:22 +01:00
class_board.h rename files 2018-02-02 21:57:12 +01:00
class_board_item.cpp DRAWSEGMENT, S_POLYGON shape: remove useless copies or conversion to std::vector<wxPoint> of SHPE_POLY_SET polygon shape. 2018-01-24 14:22:43 +01:00
class_dimension.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
class_dimension.h pcbnew: fix graphical polygon movement, rotation, flipping and edit points synchronization. 2017-12-18 18:25:45 +01:00
class_drawsegment.cpp Fix plotting of 360 degree arcs and printing of mirrored arcs. 2018-02-05 07:53:51 +01:00
class_drawsegment.h DRAWSEGMENT, S_POLYGON shape: remove useless copies or conversion to std::vector<wxPoint> of SHPE_POLY_SET polygon shape. 2018-01-24 14:22:43 +01:00
class_edge_mod.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
class_edge_mod.h
class_marker_pcb.cpp Fix code after renaming files 2018-01-29 16:40:22 +01:00
class_marker_pcb.h Rename a few files 2018-01-28 22:02:31 +01:00
class_module.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
class_module.h Fix unnecessary value parameter detected by clang-tidy. - Replace value parameter by const reference parameter or move-assignement in some cases 2018-01-09 18:55:51 -05:00
class_pad.cpp Don't let pads that *should* be NPTHs get lost. 2018-02-08 15:04:23 -05:00
class_pad.h Don't let pads that *should* be NPTHs get lost. 2018-02-08 15:04:23 -05:00
class_pcb_target.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
class_pcb_target.h pcbnew: fix graphical polygon movement, rotation, flipping and edit points synchronization. 2017-12-18 18:25:45 +01:00
class_pcb_text.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
class_pcb_text.h pcbnew: fix graphical polygon movement, rotation, flipping and edit points synchronization. 2017-12-18 18:25:45 +01:00
class_text_mod.cpp Treat %R and %V texts as references and values when rendering. 2018-02-12 10:50:43 -05:00
class_text_mod.h pcbnew: fix graphical polygon movement, rotation, flipping and edit points synchronization. 2017-12-18 18:25:45 +01:00
class_track.cpp Fix code after renaming files 2018-01-29 16:40:22 +01:00
class_track.h rename files 2018-02-02 21:57:12 +01:00
class_zone.cpp Fix code after renaming files 2018-01-29 16:40:22 +01:00
class_zone.h rename files 2018-02-02 21:57:12 +01:00
collectors.cpp rename class_collector.h to collector.h 2018-02-04 10:49:37 +01:00
collectors.h rename class_collector.h to collector.h 2018-02-04 10:49:37 +01:00
connect.cpp Fix code after renaming files 2018-01-29 16:40:22 +01:00
connectivity_algo.cpp Fix a hang-up during zone filling 2018-02-09 14:26:06 +01:00
connectivity_algo.h Add comments. 2018-02-07 14:24:10 +01:00
connectivity_data.cpp Fix unnecessary value parameter detected by clang-tidy. - Replace value parameter by const reference parameter or move-assignement in some cases 2018-01-09 18:55:51 -05:00
connectivity_data.h Fix unnecessary value parameter detected by clang-tidy. - Replace value parameter by const reference parameter or move-assignement in some cases 2018-01-09 18:55:51 -05:00
controle.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
convert_drawsegment_list_to_polygon.cpp Fix a few doxygen warnings 2017-06-17 10:40:38 +02:00
cross-probing.cpp Options for board update KiWay request (MAIL_SCH_UPDATE[_REQUEST]) 2018-02-16 19:37:23 +01:00
deltrack.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
dimension.cpp fix code after file renaming 2018-01-31 09:24:02 +01:00
drag.h Removed legacy connectivity/ratsnest algorithm, replaced with the new one. No legacy autorouting for the moment 2017-06-23 11:12:37 +02:00
dragsegm.cpp Fix code after renaming files 2018-01-29 16:40:22 +01:00
drc.cpp Pcbnew: add refill zone option to DRC. 2018-02-10 15:17:30 -05:00
drc.h Pcbnew: add refill zone option to DRC. 2018-02-10 15:17:30 -05:00
drc_clearance_test_functions.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
drc_item.cpp rename files 2018-01-31 09:24:00 +01:00
drc_marker_functions.cpp rename files 2018-02-02 21:57:12 +01:00
eagle_plugin.cpp Eagle importer: replace invalid character with '_' to match PCB<->SCH 2018-02-16 16:52:14 +01:00
eagle_plugin.h Eagle Schematics Importer: support for UTF-8 2017-12-17 19:54:21 +01:00
edgemod.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
edit.cpp Remove a useless file and move the 2 methods to suitable files. 2018-01-31 14:54:31 +01:00
edit_pcb_text.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
edit_track_width.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
editedge.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
editrack-part2.cpp rename files 2018-01-31 17:10:01 +01:00
editrack.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
edtxtmod.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
event_handlers_tracks_vias_sizes.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
files.cpp Centralize zoom-to-fit code. 2018-02-13 20:06:03 -05:00
footprint_edit_frame.cpp Fix spelling error 2018-02-15 16:46:10 +01:00
footprint_edit_frame.h Centralize zoom-to-fit code. 2018-02-13 20:06:03 -05:00
footprint_editor_onclick.cpp Fix spelling error 2018-02-15 16:46:10 +01:00
footprint_editor_options.cpp rename files 2018-02-02 21:57:12 +01:00
footprint_editor_utils.cpp Standardize pad properties terminology. 2018-02-12 19:51:32 -05:00
footprint_info_impl.cpp Implement progress reporter for cvpcb footprint loading. 2018-02-13 20:21:38 -05:00
footprint_info_impl.h Implement progress reporter for cvpcb footprint loading. 2018-02-13 20:21:38 -05:00
footprint_libraries_utils.cpp Add converted footprint library to library table during Eagle project. 2018-02-08 13:54:40 -05:00
footprint_preview_panel.cpp fix code after file renaming 2018-01-31 09:24:02 +01:00
footprint_preview_panel.h refactoring: wrapped boost::optional in OPT<> class for the purpose of easier transition to C++17 in the future 2017-11-03 23:59:02 +01:00
footprint_viewer_frame.cpp Fix spelling error 2018-02-15 16:46:10 +01:00
footprint_viewer_frame.h rename a few files related to the footprint viewer. 2018-01-31 13:37:36 +01:00
footprint_wizard.cpp Fix code after renaming files. Minor other fix. 2018-01-30 20:23:35 +01:00
footprint_wizard.h Fix code after renaming files. Minor other fix. 2018-01-30 20:23:35 +01:00
footprint_wizard_frame.cpp Fix spelling error 2018-02-15 16:46:10 +01:00
footprint_wizard_frame.h Fix code after renaming files. Minor other fix. 2018-01-30 20:23:35 +01:00
footprint_wizard_frame_functions.cpp Fix code after renaming files. Minor other fix. 2018-01-30 20:23:35 +01:00
globaleditpad.cpp Fix bug: Pressing Enter in the Move Relative dialog doesn't close the dialog. 2018-02-08 10:51:05 +01:00
gpcb_plugin.cpp Fix quotes in UI messages 2017-12-15 07:33:07 -05:00
gpcb_plugin.h Pcbnew: plugin improvements. 2017-06-11 16:21:19 -04:00
help_common_strings.h library option reviewed and renamed, minor menu text changes 2017-09-19 08:11:24 -04:00
highlight.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
hotkeys.cpp Improve edit menu and use common hotkeys 2018-02-15 16:46:17 +01:00
hotkeys.h Improve edit menu and use common hotkeys 2018-02-15 16:46:17 +01:00
hotkeys_board_editor.cpp Fix spelling error 2018-02-15 16:46:10 +01:00
hotkeys_module_editor.cpp Fix spelling error 2018-02-15 16:46:10 +01:00
initpcb.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
invoke_pcb_dialog.h Fix a few doxygen warnings 2017-06-20 10:47:30 +02:00
io_mgr.cpp Fix quotes in UI messages 2017-12-15 07:33:07 -05:00
io_mgr.h Performance fixes for the place footprint list all dialog. 2018-02-11 11:51:48 -05:00
kicad_clipboard.cpp fix code after renaming files 2018-01-30 15:34:09 +01:00
kicad_clipboard.h Improved copy/paste functionality by Kristoffer: 2017-09-30 14:28:54 +02:00
kicad_netlist_reader.cpp Fix quotes in UI messages 2017-12-15 07:33:07 -05:00
kicad_plugin.cpp Don't bail out of loading when one library couldn't be found. 2018-02-15 10:53:03 +01:00
kicad_plugin.h Performance fixes for the place footprint list all dialog. 2018-02-11 11:51:48 -05:00
layer_widget.cpp Fix drawing of transparent layer swatches. 2018-01-06 12:12:39 -05:00
layer_widget.h Fix drawing of transparent layer swatches. 2018-01-06 12:12:39 -05:00
legacy_netlist_reader.cpp UI string normalization. 2017-12-24 10:04:32 -05:00
legacy_plugin.cpp Rename a few files 2018-01-28 22:02:31 +01:00
legacy_plugin.h Pcbnew: plugin improvements. 2017-06-11 16:21:19 -04:00
load_select_footprint.cpp Don't bail out of loading when one library couldn't be found. 2018-02-15 10:53:03 +01:00
magnetic_tracks_functions.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
menubar_footprint_editor.cpp Fix spelling error 2018-02-15 16:46:10 +01:00
menubar_pcb_editor.cpp Remove duplicate track menu item 2018-02-15 16:56:01 +01:00
microwave.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
minimun_spanning_tree.cpp
minimun_spanning_tree.h
move-drag_pads.cpp Fix code after renaming files 2018-01-29 16:40:22 +01:00
move_or_drag_track.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
muwave_command.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
netclass.cpp fix code after renaming files 2018-01-30 15:34:09 +01:00
netclass.h rename files 2018-01-30 13:55:02 +01:00
netinfo.h fix code after renaming files 2018-01-30 15:34:09 +01:00
netinfo_item.cpp rename files 2018-01-30 13:55:02 +01:00
netinfo_list.cpp fix code after renaming files 2018-01-30 15:34:09 +01:00
netlist.cpp Refresh track & via net names after netlist update 2018-02-15 10:26:19 +01:00
netlist_reader.cpp Fix quotes in UI messages 2017-12-15 07:33:07 -05:00
netlist_reader.h Doxygen comment improvements. 2017-06-13 19:47:46 -04:00
onleftclick.cpp Remove a useless file and move the 2 methods to suitable files. 2018-01-31 14:54:31 +01:00
onrightclick.cpp Fix spelling error 2018-02-15 16:46:10 +01:00
pad_custom_shape_functions.cpp rename files 2018-01-30 20:23:34 +01:00
pad_draw_functions.cpp Don't let pads that *should* be NPTHs get lost. 2018-02-08 15:04:23 -05:00
pad_edition_functions.cpp rename files 2018-02-02 21:57:12 +01:00
pcb_base_edit_frame.cpp Multiple improvements concerning colors, configuration handling and legacy features in pcbnew: 2017-08-04 16:06:57 +02:00
pcb_base_edit_frame.h Fix code after renaming files 2018-01-29 16:40:22 +01:00
pcb_base_frame.cpp Centralize zoom-to-fit code. 2018-02-13 20:06:03 -05:00
pcb_display_options.cpp rename files 2018-02-02 21:57:12 +01:00
pcb_draw_panel_gal.cpp Draw the grid and the grid origin in the grid colour. 2018-02-15 18:29:56 -05:00
pcb_draw_panel_gal.h Use worksheet bounding box when the board is empty 2018-01-11 11:28:19 +01:00
pcb_edit_frame.cpp Fix spelling error 2018-02-15 16:46:10 +01:00
pcb_edit_frame.h Eagle importer: two stage netlist update 2018-02-16 19:37:23 +01:00
pcb_footprint_edit_utils.cpp rename files 2018-01-31 17:10:01 +01:00
pcb_general_settings.cpp Fp editor and board editor have now a separate color setup. 2017-09-11 18:51:48 +02:00
pcb_general_settings.h fix code after file renaming 2018-01-31 09:24:02 +01:00
pcb_layer_box_selector.cpp rename files 2018-02-02 21:57:12 +01:00
pcb_layer_box_selector.h fix code after file renaming 2018-01-31 09:24:02 +01:00
pcb_layer_widget.cpp Don't set modified flag for render settings in modedit. 2018-02-15 18:34:33 -05:00
pcb_layer_widget.h fix code after file renaming 2018-01-31 09:24:02 +01:00
pcb_legacy_draw_utils.cpp rename files 2018-01-31 17:10:01 +01:00
pcb_netlist.cpp Add footprint select dropdown to component chooser, serious refactoring 2017-03-24 09:20:27 -04:00
pcb_netlist.h Add footprint select dropdown to component chooser, serious refactoring 2017-03-24 09:20:27 -04:00
pcb_painter.cpp Don't let pads that *should* be NPTHs get lost. 2018-02-08 15:04:23 -05:00
pcb_painter.h Fix a minor issue in pad editor dialog: in GAL mode, the pad was sometimes shown in outline mode, sometimes in filled mode 2018-01-12 19:58:32 +01:00
pcb_parser.cpp fix code after renaming files 2018-01-30 15:34:09 +01:00
pcb_parser.h refactoring: wrapped boost::optional in OPT<> class for the purpose of easier transition to C++17 in the future 2017-11-03 23:59:02 +01:00
pcb_plot_params.cpp rename files: update filenames in sources 2018-01-28 19:12:26 +01:00
pcb_plot_params.h rename files: update filenames in sources 2018-01-28 19:12:26 +01:00
pcb_plot_params_parser.h Removed all exception specifiers since deprecated. 2017-06-12 13:54:55 -04:00
pcb_screen.cpp rename files 2018-02-02 21:57:12 +01:00
pcb_view.cpp Remove some extra semicolons 2017-11-09 19:52:18 +01:00
pcb_view.h Removed unused variables in PCB_VIEW 2017-12-14 17:13:42 +01:00
pcbnew.cpp Fix spelling error 2018-02-15 16:46:10 +01:00
pcbnew.h Multiple improvements concerning colors, configuration handling and legacy features in pcbnew: 2017-08-04 16:06:57 +02:00
pcbnew.icns
pcbnew.rc
pcbnew_config.cpp Fix spelling error 2018-02-15 16:46:10 +01:00
pcbnew_config.h Multiple improvements concerning colors, configuration handling and legacy features in pcbnew: 2017-08-04 16:06:57 +02:00
pcbnew_doc.icns
pcbnew_id.h Simplify Exchange Footprints dialog and add Update mode. 2018-01-24 09:55:39 -05:00
pcbplot.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
pcbplot.h Fix a few doxygen warnings 2017-06-17 10:40:38 +02:00
plot_board_layers.cpp Fix code after renaming files 2018-01-29 16:40:22 +01:00
plot_brditems_plotter.cpp Treat %R and %V texts like Reference and Value for plotting. 2018-02-11 12:27:22 -05:00
plotcontroller.h
plugin.cpp Fix quotes in UI messages 2017-12-15 07:33:07 -05:00
print_board_functions.cpp Corrected a BOARD::SetElementVisibility() invocation. 2018-02-05 12:20:31 +01:00
printout_controler.cpp Fix code after renaming files 2018-01-29 16:40:22 +01:00
printout_controler.h
protos.h Code cleaning: add comments, better names for a function, simplify code. No actual code change. 2017-05-04 08:54:30 +02:00
ratsnest.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
ratsnest_data.cpp fix compil issue in kicad.i and a minor compil warning 2018-01-28 22:24:51 +01:00
ratsnest_data.h Fix a few doxygen warnings 2017-06-25 11:26:04 +02:00
ratsnest_viewitem.cpp Fix unnecessary value parameter detected by clang-tidy. - Replace value parameter by const reference parameter or move-assignement in some cases 2018-01-09 18:55:51 -05:00
ratsnest_viewitem.h Code formatting and clean-up 2017-06-23 15:43:13 +02:00
sel_layer.cpp fix code after file renaming 2018-01-31 09:24:02 +01:00
swap_layers.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
target_edit.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
tool_footprint_editor.cpp Fix spelling error 2018-02-15 16:46:10 +01:00
tool_footprint_viewer.cpp Fix spelling error 2018-02-15 16:46:10 +01:00
tool_onrightclick.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
tool_pcb_editor.cpp Fix spelling error 2018-02-15 16:46:10 +01:00
toolbars_update_user_interface.cpp Make Ignore-DRC button tooltip Legacy-specific. 2018-02-11 12:33:33 -05:00
tracks_cleaner.cpp Track cleaner: make option "Delete dangling tracks" working again. 2018-02-04 15:05:31 +01:00
undo_redo.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
zone_filler.cpp Fix a few minor Coverity warnings 2018-02-15 10:16:17 +01:00
zone_filler.h Implement progress reporter for cvpcb footprint loading. 2018-02-13 20:21:38 -05:00
zone_settings.cpp rename files 2018-01-30 13:55:02 +01:00
zone_settings.h rename files 2018-01-30 13:55:02 +01:00
zones.h
zones_by_polygon.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
zones_by_polygon_fill_functions.cpp Implement progress reporter for cvpcb footprint loading. 2018-02-13 20:21:38 -05:00
zones_functions_for_undo_redo.cpp fix code after renaming files 2018-01-29 22:00:44 +01:00
zones_functions_for_undo_redo.h
zones_test_and_combine_areas.cpp fix code after file renaming 2018-01-31 09:24:02 +01:00