These commits are when the Protocol Buffers files have changed: (only the last 100 relevant commits are shown)
| Commit: | feb485e | |
|---|---|---|
| Author: | Seth Hillbrand | |
| Committer: | Seth Hillbrand | |
Share option plumbing between fab exports Each format kept its own copy of the same settings and helpers. The files we write do not change, but ODB++ data set all is now userdef.
The documentation is generated from this commit.
| Commit: | 23b9f65 | |
|---|---|---|
| Author: | Seth Hillbrand | |
| Committer: | Seth Hillbrand | |
Add ODB++ content and export controls This works through a number of missing ODB++ elements including pad roles, microvias, backdrills, the ROUT layer, plane types, variants, net-tie shorts, component height, 4761 via types, etc. We update the options in the output dialog to share a common set with the IPC-2581 dialog including the origin selection, naming, data sets, data and layer options.
| Commit: | 2e17319 | |
|---|---|---|
| Author: | Seth Hillbrand | |
| Committer: | Seth Hillbrand | |
Unify export foundation between ODB++ and IPC-2581 Assisted by: Claude Code
| Commit: | 7d196a3 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Implement SaveDocumentAs Assisted-by: GLM
| Commit: | 7f2d789 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
IDF: Allow configuring part number field
| Commit: | 9337734 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: add GetBoardBoundingBox
| Commit: | f923fa6 | |
|---|---|---|
| Author: | Seth Hillbrand | |
| Committer: | Seth Hillbrand | |
pcbnew: split generated table out of drill chart We want a stackup table that follows the board the way the drill chart does. The drill chart kept its schema, refresh, file format, API and dialog to itself. We move them into PCB_GENERATED_TABLE, and the drill chart builds on that base unchanged.
| Commit: | ade10da | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: support IDF export jobs
| Commit: | 7500932 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: support plotting PNG background colors Also adds support to the CLI PCB job for symmetry
| Commit: | 85435fd | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Support proxy flags for shapes Assisted-by: GLM
| Commit: | 3d9b91a | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: validate project in more places; validate project save
| Commit: | 6244c73 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Add definitions for generators
| Commit: | ffa53ab | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Add Get/SetNetClassAssignments Also add explicit project specifiers to existing netclass commands for futureproofing.
| Commit: | 5b66aa9 | |
|---|---|---|
| Author: | Benjamin Chung | |
| Committer: | Jon Evans | |
Implement FocusOnItems Fixes https://gitlab.com/kicad/code/kicad/-/work_items/25542
| Commit: | 9f93bd9 | |
|---|---|---|
| Author: | Seth Hillbrand | |
| Committer: | Seth Hillbrand | |
Run ERC on published connectivity Saved exclusions must still match after the switch, so we resolve them against published witnesses and keep pathless fallbacks. Markers follow legacy rules, one per screen driver rather than per sheet instance, and each pin reports once against its nearest mismatch.
| Commit: | c7e77db | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Support PNG plotting Also support single/multi file modes Assisted-by: GLM
| Commit: | a8598ca | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Add LoadAllLibraries Assisted-by: GLM
| Commit: | a97e252 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Add GetItemsFromLibrary
| Commit: | dc35a39 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Implement placing symbols/footprints from libraries Assisted-by: GLM
| Commit: | 4437bf3 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Add protos for library management
| Commit: | a8d6201 | |
|---|---|---|
| Author: | Jon Evans | |
API: make instance pin properties explicitly optional
| Commit: | 9fec388 | |
|---|---|---|
| Author: | Jon Evans | |
API: make line_spacing explicitly optional
| Commit: | 42bc668 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Document some enums
| Commit: | 19174c2 | |
|---|---|---|
| Author: | Seth Hillbrand | |
| Committer: | Seth Hillbrand | |
pcbnew: add drill maps and drill charts A drill map has no artwork. The pads and vias draw its marks at their holes, and one offset moves all the marks together. A drill chart is a PCB_TABLE that the board fills, and the user cannot edit its cell text. The symbol profile in the design settings gives each hole group its mark. Fixes https://gitlab.com/kicad/code/kicad/-/issues/12690 Assisted by: Claude Code
| Commit: | 4e39455 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Allow GetItems with empty types
| Commit: | 3cbac44 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: rationalize symbol child transforms Instance things are in sheet space, definition things are in local space
| Commit: | 6c96d5a | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: support creating new documents in headless
| Commit: | 1c82709 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: round-trip pin name/number options
| Commit: | 17d01cb | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Add missing enum for PCB_POINT (cherry picked from commit 5eef85faa5447aa634993a79b951e4176f3db5c6)
| Commit: | be90a7e | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Add GetDocumentModified State Also make sure board/schematic edits through the API are properly tracked in the modification state Fixes https://gitlab.com/kicad/code/kicad/-/work_items/19604 Assisted-by: GLM
| Commit: | 01640bb | |
|---|---|---|
| Author: | Jon Evans | |
Align Begin/EndCommit with V11 API
| Commit: | f310584 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: add document specifier for BeginCommit/EndCommit Fixes https://gitlab.com/kicad/code/kicad/-/work_items/24966
| Commit: | 4c4a789 | |
|---|---|---|
| Author: | Jon Evans | |
API: Add GetPaths
| Commit: | 107d63f | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: support footprint variant data
| Commit: | bf2f4d5 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: add protos for variants
| Commit: | 7907978 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Refactor and expand schematic variant management
| Commit: | 1278ad6 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
Remove obsolete schematic-only variant commands
| Commit: | a315350 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: support footprint variant data (cherry picked from commit 17674803bfb4d9bb722b62040f37500bda9f6b8f)
| Commit: | 451d6ac | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: add protos for variants (cherry picked from commit 337b9f2dc3b619d3499d322f52270315ab088803)
| Commit: | d6ee481 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
Fix missing version comment
| Commit: | e08d5e7 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Support expanding env vars (cherry picked from commit 2004d77012ea2e04531e658b75d26c7a952e79de)
| Commit: | 2004d77 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Support expanding env vars
| Commit: | 41e04c7 | |
|---|---|---|
| Author: | Benjamin Chung | |
| Committer: | Jon Evans | |
API variant support
| Commit: | 117a3f0 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Add definitions for custom user properties
| Commit: | 0a4857e | |
|---|---|---|
| Author: | Damjan | |
Add microvia stacks for HDI and BGA fanout
| Commit: | 100c7cd | |
|---|---|---|
| Author: | Mike Williams | |
| Committer: | Mike Williams | |
footprints: implement exclude from sim Doesn't do anything in particular yet, just plumbs in all the stuff we're currently tracking from the symbol anyway and makes the two table sets more similar. Assisted-by: codex
| Commit: | 027f7f7 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Support locked and lib_id for groups
| Commit: | a2e9749 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Expand support for textbox
| Commit: | d41d1e8 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Add support for reference points
| Commit: | c096bc5 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Add explicit solder mask for shapes/tracks
| Commit: | 15eda6b | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Support PCB_TABLE and PCB_TABLECELL
| Commit: | 93e179a | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: expose zone corner settings (cherry picked from commit 246c8209e9b411b32e850be1ebe39effdee22187)
| Commit: | cbfc99c | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Support pad fabrication property (cherry picked from commit 20027524709d881c6e1500bd24bce91e43ff291d)
| Commit: | ef3e09b | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Add support for embedded files
| Commit: | c689121 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Support round-tripping zone layer overrides
| Commit: | 8d7ea49 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Add pad/via teardrop settings
| Commit: | 106e1dd | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Rename TeardropType and TeardropSettings These are zone-specific settings and should have been using more specific names. Proto wire compatibility is kept.
| Commit: | b89945b | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: expose zone corner settings
| Commit: | 3a65904 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Support pad fabrication property
| Commit: | 5eef85f | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Add missing enum for PCB_POINT
| Commit: | 6a91fed | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: expand symbol support Also fix textbox not using border_enabled
| Commit: | 17d9a6f | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Support line ending styles
| Commit: | 1e06c31 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: support fields_autoplaced
| Commit: | 59e7182 | |
|---|---|---|
| Author: | Jon Evans | |
API: support schematic tables
| Commit: | 144ca54 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
Fix package name for schematic commands
| Commit: | 796ae13 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Add support for embedded files (cherry picked from commit a5cb5eb9a3036439d0599d69ee4aa54b79a51a57)
| Commit: | 09802a0 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Support round-tripping zone layer overrides (cherry picked from commit 1a5dbfb47f69f0981815357ec3cabbf7db0426f8)
| Commit: | 44b6b83 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Add pad/via teardrop settings (cherry picked from commit 348ad18a5fd5b2890091e7e05dcac47a88ea8f79)
| Commit: | fb362e3 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Rename TeardropType and TeardropSettings These are zone-specific settings and should have been using more specific names. Proto wire compatibility is kept. (cherry picked from commit 5d1d40e20b9613ea8694e10ffcc7da2b187af796)
| Commit: | 336c5b3 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Support locked and lib_id for groups (cherry picked from commit ca3b0bf3aa3e13ee69ed7eb1db641b8e60114a64)
| Commit: | 8abba41 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Expand support for textbox (cherry picked from commit 1a18fedcf01d46729799e2d61b10b461f4d10907)
| Commit: | ff6becd | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
Clean up pin maps API Fix missing handling in Deserialize Avoid "LibSymbol" jargon in API Remove descriptive comments that refer to feature request issue Remove narrow test case; proto round trips should be tested by the all-in-one that covers the actual serdes methods also.
| Commit: | a3aafd8 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: support schematic rule areas
| Commit: | f4cccef | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Add support for reference points (cherry picked from commit 6848c8c68d9ac8c79dff80fc19672616eeda7563)
| Commit: | dcb6924 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Add explicit solder mask for shapes/tracks (cherry picked from commit cb879fc6c446865be03b7db351955c20537ef24c)
| Commit: | 7cb7547 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
API: Support PCB_TABLE and PCB_TABLECELL (cherry picked from commit 3c378416ab2c6935020bdebf5cf50263ae53bdab)
| Commit: | 579c2b5 | |
|---|---|---|
| Author: | Jon Evans | |
| Committer: | Jon Evans | |
Wizards: add enum params
| 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
| 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