KiCad 10.0.4 Release
The KiCad project is proud to announce the version 10.0.4 bug fix release. The 10.0.4 stable version contains critical bug fixes and other minor improvements since the previous release.
A list of all of the fixed issues since the 10.0.4 release can be found on the KiCad 10.0.4 milestone page. This release contains several critical bug fixes so please consider upgrading as soon as possible.
Version 10.0.4 is made from the 10.0 branch with some cherry picked changes from the development branch.
Packages for Windows, macOS, and Linux are available or will be in the very near future. See the KiCad download page for guidance.
Thank you to all developers, packagers, librarians, document writers, translators, and everyone else who helped make this release possible.
Changelog
General
-
Add more support for wxWidgets 3.3. #23881
-
Update existing Git origin URL in setup remote instead of failing.
-
Test git connection with the full SSH URL. #24332
-
Fall back to remote tracking reference when pull has no upstream.
-
Seed project .gitignore with KiCad generated paths on Git initialization.
-
Refresh Git repository authorization panel as URL is typed and mask password.
-
Add "Configure Default Remote" menu item for version control.
-
Fix file status icons in project tree Git pane. #21576
-
Mark and pre-select the current branch on Git branch switch.
-
Add "Amend Last Commit" to the "Version Control" menu. #24346
-
Keep toolbar group selection when rebuilding toolbars. #24381
-
Honor custom dash/gap line ratio when plotting. #24394
-
Finish diverged pulls and offer user conflict resolution choices.
-
Sort exact matches first in library tree search. #24404
-
Fix crash on exit. #23373
-
Expand nested environment variables in template directory lookups. #24244
-
Fix corrupted DXF file export. #24405
-
Fix incorrect geometry when plotting text to PDF. #24419
-
Fix infinite wait on 2-thread CPUs when loading footprints and symbols in background. #24420
-
Prevent preferences plugin panel from growing past the screen. #24408
-
Don’t prompt for autosave recovery on content-identical files. #24126
-
Allow disabling libraries in read only library tables. #23089
-
Show the Design Blocks panel the first time it’s opened. #24437
-
Persist the symbol fields table scope between sessions. #24505
-
Fix unsupported $HANDSEED value in DXF plotter. #24405
-
Allow aborting symbol/footprint library preload. #24098
-
Allow read-only fields in the properties manager to be copied. #24550
-
Allow folders be added to Git repository. #24321
-
Fix creepage DRC failures for complex paths around NPTH slots. #24523
-
Fix unsupported $HANDSEED value in DXF plotter. #24405
-
Import Altium project parameters as text variables. #24455
-
Allow disabling libraries in read-only tables. #23089
-
Make right-click work across the whole toolbar button. #24539
-
Stop text entry dialog from clobbering caller’s text value. #24490
-
Reduce OS priorities of worker threads to avoid main (UI) thread stutter.
-
Fix oversized circle when rounding a rectangle to its maximum corner radius. #24623
Schematic Editor
-
Find non current sheets on first press in hierarchical schematics. #23849
-
Fix group in a sheet jumping to page origin when moved. #24319
-
Fix field resolution order on EasyEDA import. #24366
-
Fix XML netlist netclass for hierarchical bus members. #24220
-
Escape net names when unfolding from bus. #24153
-
Automatically wrap find on end of search. #24339
-
Fix spurious mixed values in symbol fields table dialog when duplicating a symbol. #24395
-
Fix symbol fields table shifting values on undo. #24322
-
Use custom unit display names in reference designators. #24407
-
Write canonical (untranslated) net class token for directive labels. #24403
-
Include device technology attributes when importing Eagle symbol libraries. #15579
-
Anchor power pin not driven ERC marker on a power input pin. #24328
-
Emit global labels to match flat net namespace when importing Eagle schematic. #24296 and #24311
-
Fix broken break and slice tool behavior. #24081
-
Preserve order of database mapped symbol fields. #24233
-
Do not migrate HTTP or database libraries. #24297
-
Fix conflicts on used designators field in kicad project file. #24314
-
Fix netlist exporters truncating pin numbers to 4 characters. #24330
-
Fix Eagle schematic import of devices that support multiple technologies.
-
Fix crash importing Eagle schematic. #24476
-
Fix bus global labels reporting false "not connected" positives when used on hierarchical sheets. #24449
-
Wait for background footprint preload before ERC footprint-link test.
-
Prevent broken wire positions when moving grouped items. #24335
-
Place free text and lines on owning sheet when importing PADS schematics. #24284
-
Treat empty/corrupt lock files as reclaimable stale locks. #23734
-
Fix error when adding a hierarchical sheet from another folder. #24518
-
Fix nested groups becoming unselectable after undo. #24146
-
Ensure spaces in bus alias member definitions are separate members. #23712
-
Fix symbol variant attribute erroneously overruling rule area and/or sheet attribute. #23865
-
Iterate all schematic variants when generating netlist. #23879
-
Strip "@<tag>" linking hint from pin names when importing Eagle schematic. #24483
-
Copy parent field attributes for named device technologies on Eagle import.
-
Correctly import Eagle schematic variants. #24463
-
Fix crash updating board from sheet other than top level sheet. #24587
-
Show current variant in variant selection box after Eagle import. #24609
-
Fix typo affecting import of variants using multiple technologies on Eagle import.
-
Fix broken polygons on Eagle import. #24616
-
Add advanced configuration option to disable automatic field placement on Eagle import. #24567
-
Fix line width of rectangle and circle fills on Eagle import. #24651
Symbol Editor
-
Fix saving symbols with more than two body styles. #24475
-
Prevent "Edit footprint filter" dialog from being filled with incorrect string. #24490
-
Fix broken right click menu in footprint filters. #24491
-
Normalize legacy library arc geometry on load. #22371
-
Sort libraries alphabetically in "Save As" dialog. #24018
-
Fix placement of field positions for multiple technologies on Eagle import. #24554
-
Prevent crash editing symbol properties from the library tree. #24412
Simulator
Board Editor
-
Hide table export and length tuner settings from toolbars. #24320
-
Support a PCB rule entries on EasyEDA Pro import. #24303
-
Allow implicit net names on EasyEDA Pro import. #24303
-
Fix length tuning and select connection for traces with off center via endpoints.
-
Allow creating array with zero spacing with confirmation before stacking. #24183
-
Grow rounded rectangle mask radius linearly with clearance. #24327
-
Correctly place via without moving mouse between via hot key press and left mouse button click. #19814
-
Make pad properties panel changes propagate to DRC. #24333
-
Silence enumeration compare warning in DRC rules cursor scan.
-
Enforce physical_clearance rules in the interactive router. #18658 and #24132
-
Exclude tuning patterns from differential pair uncoupled length total.
-
Fix false annular DRC errors on pads with overlapping same number pads. #24340
-
Fix DRC missing hole clearance violations on first run. #24355
-
Allow ctrl key to bypass angle snap when editing line endpoints. #24378
-
Prevent 45 degree corner snap from pulling rectangles off grid. #23736
-
Export barcodes to ODB++. #24380
-
Fix physical_hole_clearance not being enforced in the interactive router.
-
Prevent crash writing DRC report when there are existing DRC markers. #24124
-
Do not plot drill marks on layers a pad isn’t on. #24416
-
Drop URN suffix from board footprint names when importing Eagle board. #18515
-
Stabilize polygon edge dragging on coarse grids. #24105
-
Fix Altium PCB import zone clearance rule matching for polygon pours. #18408
-
Respect absent solder paste on SMD pads on IPC-2581 export. #24318
-
Copy non-copper graphics when applying design block layout. #24372
-
Support shift+click range selection in table cells. #24308
-
Prevent rule area takes selection precedence over everything else. #24464
-
Prevent duplicate DRC edge clearance reports across padstack layers.
-
Stop treating net code 0 as a real net in soldermask bridge check.
-
Do not the reset the polar angle field to 0 every time the dialog is opened
-
Ensure moving objects with arrow keys is aligned to grid. #24462
-
Fix delete removing hovered footprint instead of locked track. #24493
-
Fix STEP export failing when board body is unchecked. #24494
-
Respect update footprint fields and round trip exclude from position files.
-
Respect update footprint fields for jumper pad attributes. #24473
-
Limit hatch fill courtyard knockout to the courtyard layer. #24488
-
Don’t leave footprint selected after lock/unlock hover shortcut. #24469
-
Prevent crash due to symlink loops in directory scans. #24467
-
Tent vias with hole referenced mask when importing an Altium board. #24458
-
Import dielectric loss tangent when importing Altium boards. #24456
-
Match project variants by unique ID when importing Altium boards. #24451
-
Reconcile duplicate board stackup on load. #24133
-
Prevent zone fill issues which include unrelated rule areas. #24089
-
Run creepage checks with malformed board outline. #23653
-
Fix test point layer and duplicate via when importing PADS board. #23637
-
Model rounded rectangle slots in creepage DRC. #23578
-
Don’t double rotate pad offset when importing PADS board. #23425
-
Keep pad size consistent for flipped parts when importing PADS board. #23391
-
Import per layer pad stack geometry when importing Fabmaster boards. #22915
-
Normalize legacy library arc geometry on load. #22371
-
Add option to keep KiCad layer names when importing Altium boards. #21118
-
Fix broken zone cut outs that contain arcs. #24053
-
Fix router snapping dragged footprints back with physical clearance rules.
-
Allow differential pair routing from a neckdown area. #23820
-
Route creepage DRC paths around NPTH holes. #24286
-
Tolerate rounding in creepage arc shared end point exclusion. #24523
-
Export unsaved board state when exporting STEP. #24061
-
Fix DRC missing clearance violations for curved tracks near rounded edge cuts.
-
Preload libraries in standalone mode before board load. #23872
-
Regenerate footprint chooser library tree when loading pin number and footprint filters. #23694
-
Fix iterative zone refill blocking low priority zones after island removal. #23925
-
Fix router reacting too late to
physical_hole_clearancerules. -
Fix zone filling that includes rule area(s) to keep out part of fill results in for unrelated zones. #24089
-
Run creepage checks without board outline. #23653
-
Fix test point layer and duplicate via on PADS import. #23637
-
Model rounded rectangle slots in creepage DRC. #23578
-
Fix broken pad offset rotation on PADS import. #23425
-
Keep pad size consistent for flipped parts on PADS import. #23391
-
Import per-layer Fabmaster pad stack geometry. #22915
-
Fix broken circular zone cut outs. #24053
-
Export dimensions to ODB++. #20249
-
Snap to the active layer when no reference item is given. #24563
-
Limit hatch-fill courtyard knockout to the courtyard layer. #24488
-
Notify user when mirror skips footprints in selection. #24445
-
Refresh track width and via size selectors on units change. #24619
-
Fix keepout DRC marker placed at origin. #24615
-
Fix "Select All" missing zone hatching offsets in import settings.
-
Hide locked-item shadow when the item’s layer is off. #24628
-
Fix crash when applying a design block layout containing a table. #24591
-
Prevent crash when adding track width to predefined sizes. #23970
3D Viewer
-
Apply rotation increment changes made in preferences. #24336
-
Fix 3D model rotation normalization. #24242
-
Persist "Export Image" dialog state across opens. #24487
-
Prevent washed out copper look in ray trace view. #23211
-
Fix model distortion during preset view animations. #24601
-
Crash importing board setup. #24633
-
Support footprint free design block layouts. #24592
Gerber Viewer
-
Fix automatic layer assignment on PCB export. #24292
Page Layout Editor
-
Fix status bar field position assertion on launch (Sentry KICAD-10XP).
-
Make the grid origin you set actually stick. #24565
Job Sets
Command Line Interface
-
Report rule driven exclusions as excluded DRC output. #24264
-
Apply component class rules in headless board loader. #24211
-
Fix DRC missing tuning profile synchronization on board load.
-
Make headless ERC match GUI on hierarchical sheet instances. #24409
-
Correctly expand ${SHEETNAME} variable in the root sheet using the headless loader. #24360
-
Export correct schematic variant. #24217
-
Fix crash when running job set. #24474
Linux
macOS
-
Fix crash when updating PCM with proxy. #24087
IPC API
-
Fix build with protobuf 4.0 and later. #24390
See Also
KiCad Version 10.0.4 Release Candidate 1 Available
2026-06-11
The first release candidate for version 10.0.4 is available for testing. Version 10.0.4 will be released soon unless critical issues are found in testing this release candidate. There may be additional bug fixes to the 10.0 series available as testing builds for users who require those bugs fixed after 10.0.4 is released. You can obtain the release candidate for your platform here: Windows x86_64 Windows arm64 macOS Linux testing AppImage Ubuntu: Using the 10.
KiCad 10.0.3 Release
2026-05-15
The KiCad project is proud to announce the version 10.0.3 bug fix release. The 10.0.3 stable version contains critical bug fixes and other minor improvements since the previous release.