diff --git a/CHANGELOG.md b/CHANGELOG.md index 6c306a09e..00f4f5d3e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - `remove_solder_mask_for_dnp` similar to `remove_solder_paste_for_dnp` but applied to the solder mask apertures. (#476) - `layer_defaults` to specify the default suffix and description. (#504) + - `include_components_from_pcb` to disable the new behavior that includes + components from the PCB in the filter/variants processing - Schematic format: - Support for *unit names* (#513) - Internal templates: diff --git a/docs/source/configuration/sup_globals.rst b/docs/source/configuration/sup_globals.rst index dca8cf579..3331c2e77 100644 --- a/docs/source/configuration/sup_globals.rst +++ b/docs/source/configuration/sup_globals.rst @@ -130,6 +130,8 @@ - ``hide_excluded`` :index:`: ` [boolean=false] Default value for the `hide_excluded` option of various PCB outputs. - ``impedance_controlled`` :index:`: ` [boolean=false] The PCB needs specific dielectric characteristics. KiCad 6: you should set this in the Board Setup -> Physical Stackup. + - ``include_components_from_pcb`` :index:`: ` [boolean=true] Include components that are only in the PCB, not in the schematic, for filter and variants processing. + Note that version 1.6.3 and older ignored them. - ``invalidate_pcb_text_cache`` :index:`: ` [string='auto'] [auto,yes,no] Remove any cached text variable in the PCB. This is needed in order to force a text variables update when using `set_text_variables`. You might want to disable it when applying some changes to the PCB and create a new copy to send to somebody without changing the cached values. diff --git a/kibot/globals.py b/kibot/globals.py index 007427d6b..31b82f133 100644 --- a/kibot/globals.py +++ b/kibot/globals.py @@ -354,6 +354,9 @@ def __init__(self): self.layer_defaults = Layer """ [list(dict)] Used to indicate the default suffix and description for the layers. Note that the name for the layer must match exactly, no aliases """ + self.include_components_from_pcb = True + """ Include components that are only in the PCB, not in the schematic, for filter and variants processing. + Note that version 1.6.3 and older ignored them """ self.set_doc('filters', " [list(dict)] KiBot warnings to be ignored ") self._filter_what = 'KiBot warnings' self.filters = FilterOptionsKiBot diff --git a/kibot/gs.py b/kibot/gs.py index 0240da266..fa9219cd5 100644 --- a/kibot/gs.py +++ b/kibot/gs.py @@ -160,6 +160,7 @@ class GS(object): global_kiauto_time_out_scale = None global_kiauto_wait_start = None global_layer_defaults = None + global_include_components_from_pcb = None # This value will overwrite GS.def_global_output if defined # Classes supporting global "output" option must call super().__init__() # after defining its own options to allow Optionable do the overwrite.