72 Commits

Author SHA1 Message Date
Seth Hillbrand 5903b426be Remove deprecated CLI gerber and arg
The standalone `pcb export gerber` command was deprecated in
V9 in favor of `pcb export gerbers`. The `--plot-invisible-text`
argument was deprecated across pcb export dxf, gerbers, pdf,
and svg when the underlying action was removed.

Per the one-cycle deprecation policy, both are now removed for
V10. The gerber base class is preserved since gerbers inherits
from it. Shell completions for bash and zsh are updated, and the
CLI test now uses the gerbers directory-output interface.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/23056
2026-02-16 20:14:05 -08:00
Seth Hillbrand 0e7a052af0 PADS: add ASCII format importer for PCB and schematic files
Add complete import support for PADS ASCII (.asc) files, covering both
PCB layouts and schematics. The importer handles board outlines, copper
pours, routing with via inference, footprint decals, net assignment,
design rules, and component placement for PCB files. For schematics, it
supports symbol building from CAEDECAL definitions, multi-gate and
multi-variant parts, power symbols, wire routing, net labeling, arc
graphics, title blocks, and hierarchical sheet connectivity.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/19944
2026-02-10 21:21:22 -08:00
John Beard 19d463d144 CLI: correct file/dir output argument types in the CLI help.
SCH_EXPORT_PLOT_COMMAND had a default true (all others default
false) for dir output.
2026-02-04 16:24:04 +08:00
John Beard 29dada48a6 CLI: Document sym upgrade can output to file or directory
Relates-to: https://gitlab.com/kicad/code/kicad/-/issues/22912
2026-02-03 02:26:56 +08:00
Seth Hillbrand a9ce9da551 kicad-cli: Preprocess vector args
argparse required long-form functions to use an equal sign to process a
string like --rotate='-45,0,45' but would accept long-form args that
didn't have a negative like --output test.png without the equal sign.

Since this is an intrinsic limitation of our library, we work around it
by detecting these vector forms and changing them into an equality under
the hood.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/20191
2026-01-22 08:42:44 -08:00
Jon Evans cda727cece Abort running background jobs on program exit 2025-11-08 19:51:46 -05:00
Jon Evans 7ebb998780 Unit test fixes after upstream changes 2025-10-15 22:18:56 -04:00
Mike Williams f827982cad jobs: add pcb export stats command 2025-10-13 10:05:13 -04:00
Jeff Young 9468f304c7 Cleanup CLI argument specifications.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21950
2025-10-12 21:48:51 +01:00
Marek Roszko ad7bdf5b87 ADDED: 3D PDF Export
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/4439
2025-09-17 22:45:35 -04:00
Adam Wysocki 814f78f2b2 ADDED: Add pcb/sch upgrade cli command 2025-08-30 20:57:41 +00:00
Seth Hillbrand 9dc76f658d Help is always valid
Return 0 and no error, just help when the --help flag is present

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21538
2025-08-24 07:37:23 -07:00
Andrea Greco 8eff58a6dc PCB: Add option to cli and graphics to export stpz 2025-06-27 22:41:58 +01:00
Salvador E. Tropea c528f3c605 Add HPGL job support
- kicad-cli pcb export hpgl
- "Export HPGL" job
2025-04-28 23:05:45 +00:00
Salvador E. Tropea a590d28c8e ADDED: Postscript job support 2025-04-23 13:41:00 +00:00
Connor Goss 5a5759c41a Add IPC-D-356 Export to kicad-cli
ADDED: Added IPC-D-356 exporting to kicad-cli.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/13951
2025-02-22 21:00:54 +00:00
Seth Hillbrand 0b2d4d4879 Revise Copyright statement to align with TLF
Recommendation is to avoid using the year nomenclature as this
information is already encoded in the git repo.  Avoids needing to
repeatly update.

Also updates AUTHORS.txt from current repo with contributor names
2025-01-01 14:12:04 -08:00
Jon Evans f504a07556 ODB++: Add to CLI and jobs system 2024-12-02 10:53:01 -05:00
Alex Shvartzkop 3b987776c7 ADDED: STL and PLY (since OCCT 7.7.0) 3D model export. 2024-11-04 16:15:02 +03:00
Marek Roszko d74caace0a Initial jobset creation and running within the CLI and GUI.
Incomplete, just pushing this before feature freeze, much fixing left
2024-09-30 20:04:53 -04:00
Julie Vairai 06eb7fa588 Added GenCad export within kicad-cli
Available options:

 "--flip-bottom-pads"
 "--unique-pins"
 "--unique-footprints"
 "--use-drill-origin"
 "--store-origin-coord"
2024-09-16 22:31:52 +00:00
Alex Shvartzkop 1ae9e9b676 ADDED: XAO export for SALOME / Gmsh workflows.
Pad surfaces are assigned as face groups.
2024-04-26 01:53:43 +03:00
Alex Shvartzkop d98d7f9017 ADDED: Support 3D shape export in BREP format.
BREP doesn't support colors or label names,
but is much faster to write/read compared to STEP.
2024-04-17 17:31:10 +03:00
Marek Roszko 83ef5fd7d6 Move PGM_BASE to kicommon 2024-03-20 23:29:42 -04:00
Alex Shvartzkop f6f0b9a661 ADDED: PCB 3D image raytracing rendering from CLI.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/3691
2024-03-08 14:38:18 +00:00
Ian McInerney d44b04978a Allow enabling WXTRACE in release builds on all platforms
Setting the environment variable KICAD_ENABLE_WXTRACE now enables wx
trace logging on all platforms. MSW still requires its original
environment variables to be set to get the console displayed.
2024-02-02 14:21:33 +00:00
Marek Roszko c8d24b7613 Add missing IPC2581 cli support 2024-01-30 20:42:34 -05:00
Marek Roszko 5759823ca0 Move JOB_EXPORT_SCH_PLOT to kicommon horribly pending further refactor of plotting 2023-10-02 20:48:26 -04:00
Marek Roszko 11de95778b Unwrap the FROM_UTF8 macro in favor of direct function
The extern just gets annoying to try to export the func later. We also yeet TO_UTF8 to string_utils.h for parity.
2023-09-09 00:10:57 -04:00
Marek Roszko 6e04c2835a Remove unused header 2023-09-07 20:46:08 -04:00
Marek Roszko aa0df6aaa4 Fill in more descriptions 2023-08-31 22:17:14 -04:00
Marek Roszko d193334a10 Add vrml export to cli
Roughcut as the vrml exporter needs some loving

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15472
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13952
2023-08-24 20:39:21 -04:00
Marek Roszko 5327b6878b Fix var naming for export 2023-08-21 21:56:51 -04:00
Marek Roszko 5eac1840a0 Drop the 3d command in favor of direct 2023-08-21 21:47:56 -04:00
Marek Roszko 50ac5db8d2 Add binary GLTF export option to kicad-cli
Not by any means finished
2023-08-19 16:47:42 -04:00
Marek Roszko 5870b4f373 Mini-refactor step to a generic "3d" cli option (step command still exists for now) 2023-08-19 16:47:41 -04:00
Marek Roszko c20cc24400 Rename export classes to match the scheme 2023-08-19 11:51:50 -04:00
Marek Roszko 32f0f05a98 Rename the export cli files to the cleaner structure 2023-08-19 11:46:18 -04:00
Marek Roszko 5d001d4858 ADDED: ERC over cli....mostly 2023-08-13 20:31:19 -04:00
Marek Roszko 812143ac69 ADDED: Run PCB DRC via cli 2023-08-10 20:20:40 -04:00
Marek Roszko 2f23df8f5f Move 3 more blocks to the common ex handler 2023-04-19 21:17:31 -04:00
Marek Roszko 460b08c6ca Nix a dialog in kicad_cli.cpp that shouldn't ever fire 2023-04-16 20:09:57 -04:00
Mike Williams 753ae21fd4 BOM Generator: wire up to kicad-cli 2023-04-03 09:07:52 -04:00
Marek Roszko 8a8589b9db Fix cli crash due to dialogs buried in the pcb parser...
Fixes sentry KICAD-Q2
2023-03-24 19:52:48 -04:00
jean-pierre charras 65eb84265b Fix a compil warning issue (mingw specific)
also avoid to include wx/wx.h in kicad_cli.cpp, it is compil time consuming.
2023-03-22 08:49:26 +01:00
Salvador E. Tropea 7e3f1b1a00 Adds the missing plot formats to kicad-cli sch export 2023-03-22 02:14:50 +00:00
Seth Hillbrand a5e6f11682 Fix crash when closing non-modal 2023-01-12 13:21:22 -08:00
Seth Hillbrand fa91d906d0 Fix event blocker on GTK
We block events when a modal window is active.  But detecting when the
modal window is closed is harder on GTK than just counting modal closes
because the modal flag can sometimes be unset before the wxEVT_SHOW
event fires.  Instead, we track the stack of modal windows opened and
close the window and subsequent windows when the object pointer matches

Fixes https://gitlab.com/kicad/code/kicad/issues/13372
2023-01-12 11:53:00 -08:00
Seth Hillbrand 98d55ce82f Avoid rebuilding with each commit
We shouldn't include the kicad_build_info.h outside of the wrapper
build_info.h.  Also adds an error directive to prevent re-introduction
of define dependencies
2023-01-04 11:32:15 -08:00
Marek Roszko f2fcd4b8e1 Add a version command to cli and extend out a major.minor.patch string 2023-01-01 22:41:05 -05:00