Proto commits in KiCad/kicad-source-mirror

These commits are when the Protocol Buffers files have changed: (only the last 100 relevant commits are shown)

Commit:0a646a5
Author:Mike Williams
Committer:Mike Williams

fields tables: add scope to the filter. starting with refs,visible,all Take a look at the comments in MatchesFilter for a more detailed explanation of the various side-cases and how they're handled. Assisted-by: codex Fixes: https://gitlab.com/kicad/code/kicad/-/work_items/11547

The documentation is generated from this commit.

Commit:eeac1a1
Author:Jon Evans
Committer:Jon Evans

Fully move DRC and ERC markers to protobuf Adds new DRC_EXCLUSION and ERC_EXCLUSION wrapper classes to automagically serialize these to JSON for storage in project settings. Refactoring Assisted-by: Kimi

Commit:25b6337
Author:Jon Evans
Committer:Jon Evans

Move net highlighting to API; fully remove eda_dde

Commit:82729df
Author:Jon Evans
Committer:Jon Evans

Move sync selection to API

Commit:198598f
Author:Jon Evans
Committer:Jon Evans

API: expand stackup params Fixes https://gitlab.com/kicad/code/kicad/-/work_items/24182 (cherry picked from commit 5b9b2511bcc7f1025a4a4cbe625cd6740a2751f0)

Commit:5b9b251
Author:Jon Evans
Committer:Jon Evans

API: expand stackup params Fixes https://gitlab.com/kicad/code/kicad/-/work_items/24182

Commit:3aeae90
Author:Jon Evans
Committer:Jon Evans

API: Add FlipItems (cherry picked from commit 350f27419af5152a9fd840cab5c60f794c11062b)

Commit:350f274
Author:Jon Evans
Committer:Jon Evans

API: Add FlipItems

Commit:ca6f5cc
Author:Jon Evans
Committer:Jon Evans

API: Allow opening multiple project documents in headless mode

Commit:4952e90
Author:Jon Evans
Committer:Jon Evans

API: Add missing DRC codes

Commit:c3570f4
Author:Jon Evans
Committer:Jon Evans

API: Add GetBoardPlotSettings / SetBoardPlotSettings

Commit:325a3e3
Author:Jon Evans
Committer:Jon Evans

API: Add missing fields to RunBoardJobExportGerbers

Commit:c4cdf77
Author:Jon Evans
Committer:Jon Evans

API: Add GetBoardLayerByName (cherry picked from commit 9af492256fafbf12d80ac17fed23179fe2d13ce1)

Commit:9af4922
Author:Jon Evans

API: Add GetBoardLayerByName

Commit:af4933f
Author:Jon Evans
Committer:Jon Evans

API: Add `parent` field to board types (cherry picked from commit 34cff7f781ddc5ba8313eaea04cea0348a1f2a75)

Commit:34cff7f
Author:Jon Evans
Committer:Jon Evans

API: Add `parent` field to board types

Commit:20578ec
Author:Felix Schneider
Committer:Jon Evans

pcbnew: Add API support for PCB_GRIDITEM

Commit:767d165
Author:Mike Williams
Committer:Mike Williams

eeschema: optional UTF-8 byte-order-mark support to BOM export Old excel versions aren't going away, give the users the option. Off by default. Fixes: https://gitlab.com/kicad/code/kicad/-/work_items/21174 Assisted-by: codex

Commit:53e07dd
Author:Seth Hillbrand
Committer:Seth Hillbrand

Fix constraints for dims, rects, and polys Fixes a number of issues with the incremental solver, exposes the constraints to the properties panel and updates dimensions to use the constraints for driving graphics. Also adds a demo board with the Hammond board outline

Commit:95cc227
Author:Seth Hillbrand
Committer:Seth Hillbrand

Fix the API interface

Commit:ce16ffd
Author:Seth Hillbrand
Committer:Seth Hillbrand

pcbnew: improve constraint dragging, badges and dimensions Pin the far end of dragged segments, add arc swept-angle and undirected corner-angle constraints, propagate reference values, lay out badges in screen space, and let dimensions follow and anchor to constrained shapes. AI disclosure: Opus and Codex were used to asssit in the planning and review this of this feature. QA tests were written using Opus based on the expected behavior and edited to ensure proper behavior.

Commit:db4ca17
Author:Damjan Prerad
Committer:Seth Hillbrand

pcbnew: expand and harden the constraint UI Add tangent, radius, ellipse and elliptical-arc support, isolate and edit constraints from the panel, flag unsatisfied and redundant ones, and fix several selection and crash bugs.

Commit:e6e8577
Author:Seth Hillbrand
Committer:Seth Hillbrand

pcbnew: add geometric constraint solver Introduce a planegcs-based solver so board shapes can carry geometric constraints that re-solve on edit. Based on initial work by TomW, this allows the creation, editing and visualization of board-level constraints. AI disclosure: Opus and Codex were used to asssit in the planning and review this of this feature. QA tests were written using Opus based on the expected behavior and edited to ensure proper behavior. Fixes: https://gitlab.com/kicad/code/kicad/-/issues/2329

Commit:f61fe5e
Author:Seth Hillbrand
Committer:Seth Hillbrand

pcbnew: fill requested zone subsets in the RefillZones API handler The non-empty branch was an AS_UNIMPLEMENTED TODO. Resolve the requested KIIDs, rejecting unknown ids and rule areas and deduplicating repeats, then fill synchronously via ZONE_FILLER using the zone filler tool's commit sequence. Route the headless empty request through ZONE_FILLER_TOOL instead of dereferencing the null frame, give BOARD_COMMIT::Revert the same headless view and selection-tool guards Push already had, and document the sync/async split in the proto.

Commit:3947bb1
Author:Seth Hillbrand
Committer:Damjan

Add first-class pin-to-pad mapping Symbol pin numbers and footprint pad numbers no longer have to match. A symbol carries named pin maps and associated footprints while keeping its original pin numbers, and SCH_PIN resolves the effective pad on demand through one kernel, so the netlist, ERC, cross-probing, the database and HTTP backends, the IPC API, and the symbol UI all agree on the pad a pin lands on. Pad existence stays the board's call, since eeschema cannot link the footprint class. Builds on Nico Lube's database and HTTP pin-assignment work (MR !2540). Fixes https://gitlab.com/kicad/code/kicad/-/issues/2282

Commit:3ff0b3c
Author:Luke T. Shumaker
Committer:Seth Hillbrand

Update instructions for obtaining the GPL Ignoring files in `thirdparty/` and `qa/data/`, normalize the license-header-text that explains how to obtain the GPL to the FSF's current recommended version: You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>. I did this big search/replace with a script, which is included in the merge-request commentary.

Commit:5943e20
Author:Benjamin Chung
Committer:Jon Evans

Add user field support for eeschema IPC API

Commit:29aa7d6
Author:JamesJCode

Fix version info for sim_electrical_type IPC API field

Commit:6fd26c3
Author:dsa-t

API: add ImportNetlist to board commands

Commit:5d319ad
Author:Benjamin Chung
Committer:Jon Evans

Implement IPC API for the footprint editor

Commit:61cc554
Author:JamesJCode
Committer:JamesJCode

Added: Simulation electrical type property for PCB PADs

Commit:7c35772
Author:Seth Hillbrand

Add copper thieving zones

Commit:41202aa
Author:Seth Hillbrand
Committer:Seth Hillbrand

Fully rename signals to netchain

Commit:9760d66
Author:Seth Hillbrand
Committer:Seth Hillbrand

Fix banned format specifier and IPC enum gaps %zu in a translated wxString context trips the banned-API check on some platforms, and the IPC API enum mapping missed several chain values that were silently unhandled.

Commit:deb0653
Author:Damjan Prerad
Committer:Damjan

Add native SHAPE_T::ELLIPSE and SHAPE_T::ELLIPSE_ARC primitives

Commit:b90628a
Author:Jon Evans
Committer:Jon Evans

API: Add GetSchematicNetlist

Commit:17bb902
Author:Jon Evans
Committer:Jon Evans

API: Support getting/setting page settings

Commit:df8f799
Author:Jon Evans
Committer:Jon Evans

API: Fix up subsheet handling

Commit:48f4d67
Author:Jon Evans
Committer:Jon Evans

API: Add GetSchematicHierarchy

Commit:6cca4c7
Author:Jon Evans
Committer:Jon Evans

Use more consistent naming

Commit:76ac9e0
Author:Jon Evans
Committer:Jon Evans

API: wire up instance support for symbols and sheets

Commit:9533fda
Author:Jon Evans
Committer:Jon Evans

API: support symbols and pins

Commit:edc6236
Author:Jon Evans
Committer:Jon Evans

API: add textbox, text, directive labels

Commit:7526d29
Author:Jon Evans
Committer:Jon Evans

API: add sch group and sheet symbol support

Commit:1b7e55c
Author:Jon Evans
Committer:Jon Evans

API: Add serialization for more schematic types

Commit:4ccede3
Author:Jon Evans
Committer:Jon Evans

API: Define schematic graphic types; implement QA framework Update placeholder serialization for labels and lines Fix some equality operator issues on SCH_FIELD and SCH_LABEL_BASE

Commit:1605470
Author:Jon Evans

API: Cleanup DRC enum handling

Commit:120759b
Author:Jon Evans

API: Switch DRC severity to use an enum

Commit:da800cc
Author:Jon Evans
Committer:Jon Evans

API: Add connected items helpers Fixes https://gitlab.com/kicad/code/kicad/-/work_items/22990 (cherry picked from commit 5051a0398c28598d65b10f7bb5f523b2a25b9a73)

Commit:5051a03
Author:Jon Evans

API: Add connected items helpers Fixes https://gitlab.com/kicad/code/kicad/-/work_items/22990

Commit:69c316f
Author:Jon Evans

API: Add SetTitleBlockInfo (cherry picked from commit 8402c571890ce620990f87248d5542bb57fe18c7) Co-authored-by: Jon Evans <jon@craftyjon.com>

Commit:8402c57
Author:Jon Evans
Committer:Jon Evans

API: Add SetTitleBlockInfo

Commit:f214ca5
Author:Jon Evans
Committer:Jon Evans

API: Add support for barcodes and reference images (cherry picked from commit c776e086b7a848d876e24472854b9ac33b1c2c1f)

Commit:c776e08
Author:Jon Evans
Committer:Jon Evans

API: Add support for barcodes and reference images

Commit:8fef07d
Author:Jon Evans
Committer:Jon Evans

Add API definitions for board design rules

Commit:c4b5505
Author:Jon Evans
Committer:Jon Evans

ADDED: IPC API support for design rules Fixes https://gitlab.com/kicad/code/kicad/-/work_items/12462

Commit:49ec3dc
Author:Jon Evans
Committer:Jon Evans

Implement wizard generation

Commit:597ff55
Author:Jon Evans
Committer:Jon Evans

Implement wizard parameters

Commit:0150984
Author:Jon Evans
Committer:Jon Evans

Create initial scaffold for IPC wizards

Commit:ab00e10
Author:Jon Evans
Committer:Jon Evans

Fill out support for RunBoardJobExportDrill

Commit:9fe748f
Author:Jon Evans
Committer:Jon Evans

Support opening schematic documents from headless API

Commit:caf1bcc
Author:Jon Evans
Committer:Jon Evans

ADDED: Headless API server mode for kicad-cli

Commit:46da153
Author:Jon Evans
Committer:Jon Evans

ADDED: IPC API support for jobs

Commit:f07f108
Author:Jon Evans

API: Add support for retrieving user names for all layers (cherry picked from commit 3514d130cb07d7c990906366cdc4e99d391060cf) Co-authored-by: Jon Evans <jon@craftyjon.com>

Commit:3514d13
Author:Jon Evans
Committer:Jon Evans

API: Add support for retrieving user names for all layers

Commit:899d488
Author:Seth Hillbrand
Committer:Seth Hillbrand

ADDED: Backdrill support - Allow setting backdrill (from B.Cu up) and tertiary drill (from F.Cu down) width and target layer (backdrill is inclusive) - Allow setting post machining options (counterbore, countersink) - Update properties for vias and THT pads - Add output for Excellon and Gerber drill files as separated files for different drill depths - Add drill map output calling out post-machined holes - Add STEP export support - Add 3d-viewer support - Add 2581 support using backdrill property. Post machining called out in comments - Add ODB++ support using separate drill file for each depth - Add DRC check for tracks connected to pad layers that are backdrilled or post-machined Fixes https://gitlab.com/kicad/code/kicad/-/issues/18836

Commit:f5a0646
Author:Jon Evans

API: Fix serialization of footprint rule overrides; add missing allow_soldermask_bridges attribute Fixes https://gitlab.com/kicad/code/kicad/-/issues/21674 (cherry picked from commit ea5ae7cc5d392f5cf501423eb3a257607142a7ed) Co-authored-by: Jon Evans <jon@craftyjon.com>

Commit:ea5ae7c
Author:Jon Evans

API: Fix serialization of footprint rule overrides; add missing allow_soldermask_bridges attribute Fixes https://gitlab.com/kicad/code/kicad/-/issues/21674

Commit:86d8082
Author:Jon Evans
Committer:Jon Evans

API: Add schematic pin attributes to pads Fixes https://gitlab.com/kicad/code/kicad/-/issues/22360 (cherry picked from commit bdd98e801fb56750a1c10ce2a8d14aeeb13c6da5)

Commit:bdd98e8
Author:Jon Evans
Committer:Jon Evans

API: Add schematic pin attributes to pads Fixes https://gitlab.com/kicad/code/kicad/-/issues/22360

Commit:a9ac108
Author:Jon Evans

API: Preserve linked symbol properties in footprints Fixes https://gitlab.com/kicad/code/kicad/-/issues/21655 (cherry picked from commit 949be9a63ac07df5adbb58d9f57b9ab456dc7b14) Co-authored-by: Jon Evans <jon@craftyjon.com>

Commit:949be9a
Author:Jon Evans
Committer:Jon Evans

API: Preserve linked symbol properties in footprints Fixes https://gitlab.com/kicad/code/kicad/-/issues/21655

Commit:b7ce289
Author:JamesJCode
Committer:JamesJCode

ADDED: PCB Tuning Profiles Tuning profiles build on the previous delay tuning work to allow the definition of track geometries per-layer for a given tuning profile. These can be calculated from a target impedance (with all relevant geometry taken from the board stackup), or entered manually. Tuning profiles can be configured to enable time-domain tuning, and to automatically generate track geometry DRC rules for net classes which have an assigned tuning profile. Adds a DRC check for net classes with a tuning profile assigned which is not itself defined.

Commit:2ab94fa
Author:Seth Hillbrand

Fix QA for RPT_SEVERITY handling

Commit:c9b29eb
Author:Seth Hillbrand
Committer:Seth Hillbrand

Throw when encountering unknown report severity

Commit:e005e75
Author:Seth Hillbrand
Committer:Seth Hillbrand

ADDED: API for injecting arbitrary DRC errors/warn Allows external tools to calculate/represent specialized DRC errors on the board Fixes https://gitlab.com/kicad/code/kicad/issues/21727

Commit:507b22b
Author:Jeff Young
Committer:Jeff Young

Fill in more missing barcode code.

Commit:592e854
Author:Seth Hillbrand
Committer:Seth Hillbrand

Fix botched merge These were in place previously but one of my rebases broke it. This should get us back to compiling

Commit:dabd8cd
Author:Jon Evans
Committer:Jon Evans

API: Add ability to set enabled board layers and copper layer count (cherry picked from commit ca0207016e9f91d1bd8ed1c5fadf87096583611e)

Commit:ca02070
Author:Jon Evans
Committer:Jon Evans

API: Add ability to set enabled board layers and copper layer count

Commit:8acf5c1
Author:Seth Hillbrand
Committer:Seth Hillbrand

ADDED: Rounded Rectangles Fixes https://gitlab.com/kicad/code/kicad/-/issues/4742

Commit:7e4133b
Author:Mike Williams
Committer:Mike Williams

design blocks: fix up tests, API

Commit:1a4eba5
Author:Seth Hillbrand
Committer:Seth Hillbrand

ADDED: Skip Via support Skip vias are vias that are flashed on their start and end layers but have no annular rings on the interior layers and do not connect to zones in those layers You can now select Annular ring type "Start and end layers only". This will prevent annular ring flashing on intermediate layers and zones fills will provide clearance. You can still connect tracks to intermediate layers but preventing that will fall to the designer Fixes https://gitlab.com/kicad/code/kicad/-/issues/21433

Commit:a07db67
Author:Ben Gamari
Committer:James J

api/common: Fix units of Time Times are internally represented in attoseconds, not picoseconds.

Commit:997cee8
Author:Jon Evans

pcbnew/api: Expose pad-to-die length Closes #21346. (cherry picked from commit 29c733c651fc1077fab2c71a44b9d64d4a3a0b87) Co-authored-by: Ben Gamari <ben@smart-cactus.org>

Commit:e6ab119
Author:Ben Gamari
Committer:Jon Evans

pcbnew/api: Expose pad-to-die delay Addresses #21346.

Commit:eaac9a6
Author:Ben Gamari
Committer:Jon Evans

api: Introduce common.types.base_types.Time This is needed to represent pad-to-die delays.

Commit:29c733c
Author:Ben Gamari
Committer:Jon Evans

pcbnew/api: Expose pad-to-die length Closes #21346.

Commit:66d8a13
Author:Seegong
Committer:Jon Evans

Implement PCB_GROUP serialization and deserialization methods

Commit:061cb2e
Author:Jon Evans

API: Add CheckPadstackPresenceOnLayers Fixes https://gitlab.com/kicad/code/kicad/-/issues/20587 (cherry picked from commit d1e4b03ec1423276459d98c98571e980c777686a) Co-authored-by: Jon Evans <jon@craftyjon.com>

Commit:d1e4b03
Author:Jon Evans

API: Add CheckPadstackPresenceOnLayers Fixes https://gitlab.com/kicad/code/kicad/-/issues/20587

Commit:a63758e
Author:Jon Evans

API: Add symbol path for footprint instances See https://gitlab.com/kicad/code/kicad-python/-/issues/37 (cherry picked from commit 4dd39976a345df7f77213c7f48b80d5923c5d8ed) Co-authored-by: Jon Evans <jon@craftyjon.com>

Commit:87c91fe
Author:Mike Williams
Committer:Mike Williams

multichannel: support groups

Commit:4dd3997
Author:Jon Evans
Committer:Jon Evans

API: Add symbol path for footprint instances See https://gitlab.com/kicad/code/kicad-python/-/issues/37

Commit:8ef54c3
Author:JamesJCode

Remove delay_profile API parameter until design matures

Commit:f1344e9
Author:JamesJCode

Final purge of 'tuning profile' -> 'delay profile' in time-domain code Only mention remains in the delay profile settings JSON

Commit:eb17ebe
Author:JamesJCode
Committer:JamesJCode

Implement time-domain length tuning - Adds time and delay units - Adds time domain tuning parameters entry and storage - Adds pad-to-die delay property - Adds time domain parameter interface for length / delay calculations - Adds unit tracking for numerical constants through LIBEVAL - Will need future work to truly propagate through binary expressions - Adds time domain tuning to meander placers - Adds time delay display to net inspector panel - Modifies DRC to handle time domain constraints

Commit:718bf40
Author:Mike Williams
Committer:Mike Williams

sch groups: add to API

Commit:1c83f0a
Author:Jon Evans
Committer:Jon Evans

Implement jumpers for footprints Fixes https://gitlab.com/kicad/code/kicad/-/issues/2558

Commit:27edf0b
Author:Daniel Treffenstädt
Committer:Jon Evans

ADDED: Per layer properties of zones used for control over zone hatching position