Commit Graph

438 Commits

Author SHA1 Message Date
Salvador E. Tropea 3e05ab8b6a [Import] Preflights now can be imported
- Also fixed the filters and variants configuration, now delayed.

Fixes #221
Related to #181
2022-07-12 13:39:43 -03:00
Salvador E. Tropea 6c118b73fa Imports can be nested now
- import stuff that was imported ...
- Is the first approach, works for a simple case

Related to #218
2022-07-12 10:55:00 -03:00
Salvador E. Tropea 42503a909a [SCH][Print] A global option to cross components without a body.
- Only for KiCad 6

Closes #219
2022-07-12 08:44:05 -03:00
Salvador E. Tropea 664a13c548 [Dependencies] Added command line option to disable the downloads. 2022-07-01 13:30:51 -03:00
Salvador E. Tropea 870a9cee5c Bumped version to 1.2.0
- Updated versions
- Added comment about ImageMagick default policy
- Added links to navigate_results example and discussions
2022-06-15 06:24:15 -03:00
Salvador E. Tropea a3811537b8 Fixed svg_pcb_print: page orientation for portrait. 2022-06-12 16:07:58 -03:00
Salvador E. Tropea 06bb47ea05 pcb_print: fixed frame page orientation in GUI mode. 2022-06-12 15:37:00 -03:00
Salvador E. Tropea 38b1202e86 Fixed: enabled the vias plotting in pcb_print
- Disabled by 43c5f4f
2022-06-10 07:43:27 -03:00
Salvador E. Tropea 4872a6d366 XML BoM: Fixed problems with fields containing /
Fixes #206
2022-06-09 13:38:32 -03:00
Salvador E. Tropea 54dd130e4f Highlighted the most relevant options 2022-06-08 08:37:30 -03:00
Salvador E. Tropea 043ee382d3 Implemented output priorities
- By default `qr_lib` is high priority and `navigate_results`/
  `compress` are low priority.
- Priorities can be configured.
- A command line option disables it.
2022-06-07 13:57:32 -03:00
Salvador E. Tropea 0deed52479 New global section `environment`
- Allows defining KiCad environment variables.

Related to INTI-CMNB/KiAuto#21
2022-06-07 10:38:12 -03:00
Salvador E. Tropea 0eafc93fa8 Fixed GenCAD output targets.
- Also added a category
2022-06-01 11:31:55 -03:00
Salvador E. Tropea d93d70541c Better KiCad v6 environment variables handling
- more variables detected (KICAD6_3RDPARTY, KICAD_USER_TEMPLATE_DIR)
- native KiCad 6 names (KICAD6_* instead of KICAD_*)
- all exported to the environment, not just the core

Fixes #205
2022-05-30 13:00:23 -03:00
Salvador E. Tropea 684b996ced Added `navigate_results` output
- It generates web pages to navigate all generated outputs by category
2022-05-27 13:38:32 -03:00
Salvador E. Tropea b206d417ca Fixed KiBoM mounting hole regex
- Applied to the Footprint
- The ac39118 fix only affected the Part

Related to SchrodingersGat/KiBoM#169
Fixes #201
2022-05-26 10:02:07 -03:00
Salvador E. Tropea 8ae9dff143 Bumped version to 1.1.0 2022-05-24 09:03:36 -03:00
Salvador E. Tropea bb6e962f3d Internal BoM: Added customizable extra info after the title
Closes #199
2022-05-20 19:08:20 -03:00
Salvador E. Tropea fb082fcbb3 Added `kibot-check` tool to check the installation 2022-05-20 13:26:41 -03:00
Salvador E. Tropea 23d3d76d94 Added Pattern and text variables expansion on internal BoM title
Closes #198
2022-05-20 07:30:29 -03:00
Salvador E. Tropea 287f8626ba Already configured outputs not created (i.e. when creating reports) 2022-05-20 07:24:41 -03:00
Salvador E. Tropea 23e632303d Fixed problems with KiCost using internal variants
- The XML didn't remove `variant` field properly (lack of lower)
- THe XML didn't support UTF-8
2022-05-18 15:59:38 -03:00
Salvador E. Tropea 054a090258 Added netlist export output
Closes #197
2022-05-18 09:49:17 -03:00
Salvador E. Tropea 88f8573b26 Added `--quick-start` to the changelog 2022-05-10 10:50:38 -03:00
Salvador E. Tropea 776595636b Bumped version to 1.0.0. 2022-05-10 10:47:32 -03:00
Salvador E. Tropea 5d9b047d81 Added an option to remove the files we compressed.
Closes #192
2022-04-20 13:43:41 -03:00
Salvador E. Tropea 900be375e9 Added a first approach to Board2Pdf support. 2022-04-05 16:36:02 -03:00
Salvador E. Tropea 9e1f645c31 Fixed problems when using page layout files with relative paths.
Fixes #174
2022-04-04 18:02:31 -03:00
Salvador E. Tropea 372fad5d28 Fixed 3D problems to download 3D models for native KiCad 6 files.
- Not seen on files imported from KiCad 5

Fixes #171
2022-03-31 12:11:52 -03:00
Salvador E. Tropea 3c13ae1ccb Added KiCad 6 color themes to PDF/SVG PCB Print 2022-03-28 15:37:52 -03:00
Salvador E. Tropea 5940e7bcd6 Fixed missing BoardViewOptions.get_targets
Fixes #167
2022-03-24 14:05:48 -03:00
Salvador E. Tropea b5d5bea324 Made more clear which preflight options modifies files
- Also unified to "preflight" (more common than pre-flight)
Related to #165
2022-03-24 13:08:51 -03:00
Salvador E. Tropea 788b7d6b83 Added support for buried/blind vias to the drill outputs
Fixes #166
2022-03-24 12:57:08 -03:00
Salvador E. Tropea 1824d56876 Added a preflight to define KiCad 6 variables.
Closes #161
2022-03-12 18:44:08 -03:00
Salvador E. Tropea cb47cf3042 New output to export PCB in GENCAD format.
Closes #159
2022-03-08 15:55:34 -03:00
Salvador E. Tropea 86aa7b6357 New preflight to annotate according to PCB coordinates
Related to #93
2022-03-08 14:33:38 -03:00
Salvador E. Tropea 0c0c6ffd62 New output to join PDFs.
Closes #156
2022-03-03 16:13:00 -03:00
Salvador E. Tropea 562e36d6f5 Added output to print PCB layers in SVG format
- Also added support for them in the reports
- Changed the full report to use them
2022-03-03 13:13:46 -03:00
Salvador E. Tropea 27c987217c New preflight to annotate power components
Closes #76
2022-02-26 13:21:40 -03:00
Salvador E. Tropea ebc6458948 Fixed schematic: Paper orientation was discarded on v5 files.
Fixes #150
2022-02-17 12:40:29 -03:00
Salvador E. Tropea 174bd44a09 Changed: The `source` path for `compress` now has pattern expansion
Fixes #152
2022-02-17 10:56:11 -03:00
Salvador E. Tropea 6281a40335 Fixed spelling 2022-02-16 19:56:04 -03:00
Salvador E. Tropea aa48cc3187 Forced files to end in a single new line 2022-02-16 17:34:34 -03:00
Salvador E. Tropea b2ab00f6cb Added global *units* option
Solves the KiCad 6 dimensions issue. See #146
2022-02-14 15:42:54 -03:00
Salvador E. Tropea 5d2d0a4195 Added MacroFab XYRS support
- Internal BoM options:
  - `angle_positive`
  - `csv.hide_header`
  - `footprint_populate_values`
  - `footprint_type_values`
  - `units` mils
- Columns:
  - `Footprint Type`
  - `Footprint Populate`
  - `Footprint X-Size`
  - `Footprint Y-Size`
2022-02-14 13:49:56 -03:00
Salvador E. Tropea edbe29740b Internal BoM: XYRS support
- Now the `bom` output can generate files like `position`
2022-02-11 11:45:43 -03:00
Salvador E. Tropea ed4ff70033 Internal BoM: two other options for the sorting criteria. 2022-02-11 11:04:21 -03:00
Salvador E. Tropea 278de8fb16 Added report generation (for design house)
Related to #93
2022-01-15 15:47:48 -03:00
Salvador E. Tropea 4d5220006f Changed the default output pattern
- Now includes the `output_id` (%I)
2022-01-15 15:45:28 -03:00
Salvador E. Tropea 4bba7e9a9a Added global options to define the PCB details. 2022-01-14 13:42:04 -03:00
Salvador E. Tropea 8676f28f3a Fixed problems when using a hidden config file
- Found when using an output that needs the SCH, not specifying the
  SCH and more than one SCH was found.

Closes #138
2022-01-14 10:32:45 -03:00
Salvador E. Tropea 926d6eb24c Added support for `--subst-models` option for KiCad 6's kicad2step.
Closes #137
2022-01-13 19:51:59 -03:00
Salvador E. Tropea be59ee397e Added support for KiCad 6 to the `update_qr` preflight.
Related to #93
2022-01-04 16:52:12 -03:00
Salvador E. Tropea 5017f7e078 Added QR codes generation: symbols and footprints.
Related to #93
2022-01-03 12:35:33 -03:00
Salvador E. Tropea 64bfc4824d Added `--cli-order` option to generate outputs in arbitrary order.
- Also updated some output details in the README
Related to #106
2021-12-31 10:40:17 -03:00
Salvador E. Tropea e5ed4b6652 Added support for variants on KiCost output.
Related to #106
2021-12-30 18:26:31 -03:00
Salvador E. Tropea 4b3636313c Update XML: Removed the side effect Bom.
Related to #106
2021-12-30 13:12:00 -03:00
Salvador E. Tropea bb27491313 Added: position files now can include virtual components.
Related to #106
2021-12-30 12:21:41 -03:00
Salvador E. Tropea 9417b61478 Moved all loggers to the same domain.
- To fix the warnings count
2021-12-30 11:09:36 -03:00
Salvador E. Tropea 6d939bbdbe Added datasheets downloader
Closes #119
2021-12-29 15:20:54 -03:00
Diego Capusotto 41c3661d8e KiCost: list arguments wrongly passed.
Related to #120
2021-12-16 17:24:03 -03:00
Diego Capusotto 96a5f3da21 Added support for new KiCost options `split_extra_fields` and `board_qty`.
Closes #120
2021-12-15 17:39:01 -03:00
Diego Capusotto 3eb82bc86d Changed: The `%d/%sd/%bd` expansion patterns are now affected by the global `date_format`.
- Can be disabled using `date_reformat: false`.
- Related to #121
2021-12-15 17:15:49 -03:00
Diego Capusotto e2599731f7 Added `output_id` output option to be expanded by %I 2021-12-14 16:19:49 -03:00
Salvador E. Tropea a82f130ad9 Now you can compress files relative to the current working directory.
Related to #93
2021-12-03 19:30:11 -03:00
Salvador E. Tropea 6a691cf362 Added pre-flight to replace in the PCB
- Also added some constrains to what can be substituted to avoid
  corrupting the files.
2021-12-03 16:52:04 -03:00
Salvador E. Tropea 9cd2581582 Added new pre-flight command to replace tags in the schematic.
Related to #93, but also an old idea floating around.
2021-12-03 14:37:53 -03:00
Salvador E. Tropea 9e4adf5286 Added patterns to expand the title blck comments.
Related to #93
2021-12-03 10:13:42 -03:00
Salvador E. Tropea 70fb334856 A mechanism to avoid running some outputs by default.
Related to #112
2021-12-02 18:47:40 -03:00
Salvador E. Tropea 84d6217d18 Another experimental mechanism to change 3D models according to the variant.
Closes #103
2021-12-02 17:19:40 -03:00
Salvador E. Tropea b02ad0079b Added reference to the issue in the changelog
Changes in a430916a4a
Closes #112
2021-12-02 14:59:47 -03:00
Salvador E. Tropea a430916a4a Now you get an error when defining two outputs with the same name. 2021-12-02 14:58:37 -03:00
Salvador E. Tropea b9cb24c325 Now you get an error when defining two outputs with the same name. 2021-12-02 13:21:57 -03:00
Salvador E. Tropea 6392124f9f Added import for globals. 2021-12-02 10:33:19 -03:00
Salvador E. Tropea 995219a8ea Added option to add text to the `join` in the internal BoM
Related to #104
2021-12-01 18:07:41 -03:00
Salvador E. Tropea 1e6ac697f0 Fixed gerber job files not using the output defined in global. 2021-12-01 16:07:08 -03:00
Salvador E. Tropea a503c5fdc6 Added global options to control the date format. 2021-12-01 14:59:36 -03:00
Salvador E. Tropea 95135c8c56 New expansion patterns and out_dir from global section.
- Also added expansion in out_dir
- Related to #116
2021-11-30 19:12:14 -03:00
Salvador E. Tropea 3acaa42574 Added in SCH PDF Print: monochrome and no frame options. 2021-11-25 11:31:23 -03:00
Salvador E. Tropea f9a2aac01b Changed %v/%V to also icnlude the global variant
Closes #104
2021-11-22 16:22:52 -03:00
Salvador E. Tropea 49ea1bb62a Internal BoM: `count_smd_tht` option to compute SMD/THT stats.
Closes #113
2021-11-22 14:34:07 -03:00
Salvador E. Tropea dd265fa2e0 Fixed compress: not expanding %VALUES in target dirs.
Fixes #111
2021-11-19 10:15:58 -03:00
Salvador E. Tropea 27b26feb88 Added 3D view render
Related to #99
2021-11-17 17:40:54 -03:00
Salvador E. Tropea b4c1531e10 PCB PDF Print: mechanism to change the block title.
- Related to #102
- Also added %V to expand the variant name
- Documented %v and %V
2021-11-17 10:51:28 -03:00
Salvador E. Tropea cfcc9bea39 Fixed PCB Print: to show the real name of the PCB file.
Fixes #102
2021-11-16 13:11:35 -03:00
Salvador E. Tropea 10486af51a Fixed KiCost variants: when setting a field hat doesn't exist
Fixes #105
2021-11-15 15:56:33 -03:00
Salvador E. Tropea 087e36b2c7 KiCost variants: empty DNF fields shouldn't be excluded.
Fixes #101
2021-11-15 15:06:32 -03:00
Salvador E. Tropea 998754753d Added Default global `dir` option 2021-11-15 14:40:30 -03:00
Salvador E. Tropea 79651eaa07 Fixed: Makefile: %VALUE not expanded in the directory targets. 2021-11-15 13:58:31 -03:00
Salvador E. Tropea ca5dfb428b Internal BoM: the field used for variants doesn't produce conflicts.
- Fixes: #100
2021-11-15 13:39:47 -03:00
Salvador E. Tropea 9e65e0712e `--list`: problems with layers and fields specific for the project.
-  Fixes INTI-CMNB/kibot_variants_arduprog#4
2021-11-15 13:38:35 -03:00
Salvador E. Tropea 99c826f3d7 JLCPCB example, to match current recommendations
- See: g200kg/kicad-gerberzipper#11
- Added `route_mode_for_oval_holes` option
2021-11-01 10:41:37 -03:00
Salvador E. Tropea bc5d1b15c6 Generic filter: added options to match if a field is/isn't defined. 2021-10-18 17:05:51 -03:00
Salvador E. Tropea 5e20206da4 Added fallback for values+units we can't understand 2021-10-18 16:52:40 -03:00
Salvador E. Tropea 3eebc04e4b Changed the mechanism to avoid merging components with empty fields 2021-10-18 16:45:20 -03:00
Salvador E. Tropea bcd1e624e9 Avoid grouping components when they lack the grouping fields.
- This is for the internal BoM when `merge_blank_fields` is disabled
2021-10-18 15:59:26 -03:00
Salvador E. Tropea b3a4fec5b7 Option to hide component from PDF PCB Print
- option `hide_excluded` to hide components marked by the
  `exclude_filter`.
- https://forum.kicad.info/t/fab-drawing-for-only-through-hole-parts/
2021-10-14 14:07:35 -03:00
Salvador E. Tropea d3cd01a246 Added the last 2 fixes to the changelog 2021-10-12 09:35:09 -03:00
Salvador E. Tropea ab3bd7f0b3 Added a mechanism to import filters and variants.
- Also to restrict which outputs are imported.
- Fixes #88
2021-10-04 14:44:43 -03:00
Salvador E. Tropea 0f0e739026 Changed the default `group_fields` list.
Internal BoM: now components with different Tolerance, Voltage, Current
and/or Power fields aren't grouped together.
These fields are now part of the default `group_fields`. (#79)
2021-09-27 11:31:51 -03:00
Salvador E. Tropea a31002ed01 Fixes position files, now defaults to use the auxiliar origin as KiCad.
Can be disabled to use absolute coordinates.
Fixes #87
2021-09-27 08:35:58 -03:00
Salvador E. Tropea 1dea3970bc XLSX BoM: option to control the logo scale (Fixes #84) 2021-09-16 07:58:48 -03:00
Salvador E. Tropea a7bf1b080c Added skip_top and skip_bottom options to the rot_footprint filter. 2021-04-25 12:20:39 -03:00
Salvador E. Tropea e391f513ec Bumped version to 0.11.0. 2021-04-25 11:24:49 -03:00
Salvador E. Tropea 55277a550f More KiCost integration in KiBoM.
- Also added level and comment to columns in the XLSX BoM output.
- Now user columns can be added to the KiCost sheet.
- The "Colors" sheet now includes KiCost colors
- The KiCost column names are more coherent with our names
- Style colors affects the KiCost colors
- About message includes KiBot version
- Header layout is also more coherent
- use_alt, number, max_col_width and ref_separator options are passed
  to KiCost
2021-04-25 09:29:56 -03:00
Salvador E. Tropea 8706e0e02f The "References" column is now coloured as "Reference" 2021-04-25 09:25:49 -03:00
Salvador E. Tropea de0390f954 Reference ranges of two elements no longer represented as ranges.
Examples: "R1-R2" is now "R1 R2", "R1-R3" remains unchanged.
2021-04-25 09:23:19 -03:00
Salvador E. Tropea e22e1db49a Added support for width, style and color in "wire notes"
Fixes #70
2021-04-22 12:33:13 -03:00
Salvador E. Tropea cfe61c9b7e Added board view export.
Closes #69
2021-04-20 13:22:56 -03:00
Salvador E. Tropea 16ddb9465f Added Internal BoM + KiCost integration
- Currently very basic, but you get "Costs" and "Costs (DNF)" work
  sheets in the XLSX output when the xlsx.kicost option is enabled.
2021-04-15 11:14:37 -03:00
Salvador E. Tropea 7961209b0f Experimental mechanism to change 3D models according to the variant. 2021-03-31 18:00:43 -03:00
Salvador E. Tropea 7c3f273684 Basic KiCost support. 2021-03-31 12:27:55 -03:00
Salvador E. Tropea 1290bb6995 New KiCost variant style.
- New internal filters `_var_rename_kicost` and `_kicost_dnp`.
- New `skip_if_no_field` and `invert` options to the regex used in the
  generic filter.
2021-03-30 09:37:36 -03:00
Salvador E. Tropea afe80052b4 Added a new filter `var_rename_kicost`
Is very similar to `var_rename` with a few differences that makes it
suitable to emulate the KiCost field rename mechanism.
2021-03-25 12:57:26 -03:00
Salvador E. Tropea 01291ebe63 Added field rename filter.
Including an internal version to emulate KiCost behavior.
2021-03-23 13:20:26 -03:00
Salvador E. Tropea 40bd7c24f2 Added support for KiCost's subparts 2021-03-19 19:41:46 -03:00
Salvador E. Tropea 9478e42bb3 Documented #58 in the changelog and added a test case 2021-03-12 21:28:10 -03:00
Salvador E. Tropea 1b48e614a7 Added pattern expansion in the `dir` option for outputs
Closes #58
2021-03-12 21:14:39 -03:00
Salvador E. Tropea 4f73de1157 Makefile variables KIBOT, DEBUG and LOGFILE can be defined from outside. 2021-03-03 13:08:52 -03:00
Salvador E. Tropea 6d59960b59 Sorted the schematic dependencies to make them consistent. 2021-03-03 13:07:46 -03:00
Salvador E. Tropea f9ac0d001f Fixed extra dirs created during makefile generation. 2021-02-24 14:24:22 -03:00
Salvador E. Tropea c104d14511 Uncatched exceptions during makefile generation 2021-02-24 14:08:38 -03:00
Salvador E. Tropea 5560c62d14 Errors and warnings from KiAuto now are printed as is. 2021-02-24 12:58:47 -03:00
Salvador E. Tropea 111b86a375 Fixed problems using E/DRC filters and the output dir didn't exist. 2021-02-24 12:36:19 -03:00
Salvador E. Tropea 8fba0d9909 Added `erc_warnings` option to consider ERC warnings as errors. 2021-02-24 12:34:49 -03:00
Salvador E. Tropea 7409c99476 Bumped version to 0.10.1. 2021-02-22 15:07:48 -03:00
Salvador E. Tropea 2b845d81a0 Fixed problem using Python 3.6
- ZipFile's compresslevel argument introduced in 3.7
2021-02-16 12:54:33 -03:00
Salvador E. Tropea 95b48ab053 Fixed problem using Python 3.6
- Fixes #52
- StreamHandler.setStream introduced in 3.7
2021-02-16 12:02:41 -03:00
Salvador E. Tropea d1c74d681b Fixed missing python3-distutils dependency on Debian package. 2021-02-12 17:26:36 -03:00
Salvador E. Tropea 8d5c0109f9 Bumped version to 0.10.0 2021-02-12 16:08:46 -03:00
Salvador E. Tropea 003fcc82d4 Added changelog entry for #51 2021-02-12 15:57:22 -03:00
Salvador E. Tropea e93bc6bf40 Fixed problems using layer suffixes containing non-ASCII chars 2021-02-11 11:29:21 -03:00
Salvador E. Tropea 3ed25cc5ff Now you can import outputs from another config file. 2021-02-11 11:02:58 -03:00
Salvador E. Tropea f698e44642 Now we can load InteractiveHtmlBom even when installed only as plugin
Fixes #49
2021-02-08 15:37:01 -03:00
Salvador E. Tropea 34e85d646c Added KiAuto time-out control (EXPERIMENTAL!!)
Related to #48
2021-02-06 20:48:34 -03:00
Salvador E. Tropea f6dac6ef13 Problems using internal names for drill maps in gerb_drill output.
Fixes #47
2021-02-06 12:55:02 -03:00
Salvador E. Tropea 73cb98f113 Makefile generation. 2021-01-22 17:22:18 -03:00
Salvador E. Tropea 86b1c13790 Now information messages go to stdout (not stderr).
Debug, warning and error messages still use stderr.
2021-01-22 17:17:41 -03:00
Salvador E. Tropea 15474ae4d7 Now you can consolidate more than one project in one BoM.
The basic idea comes from pimpmykicadbom by Anton Savov (@antto)
2021-01-21 14:43:47 -03:00
Salvador E. Tropea 66e342e36d Internal BoM: HTML rows are highlighted on hover (not just the cell). 2021-01-19 11:31:14 -03:00
Salvador E. Tropea f2d84a1a95 Internal BoM: HTML tables can be sorted selecting a column (Java Script). 2021-01-19 10:58:46 -03:00
Salvador E. Tropea 159e8996e8 Added support for ZIP/TAR/RAR generation. 2021-01-15 13:33:33 -03:00
Salvador E. Tropea 75059b7b86 Added gerber and drill examples for various manufacturers.
From KiCad Gerber Zipper.
2021-01-14 10:40:59 -03:00
Salvador E. Tropea 9f4763c36b Custom reports for plot outputs (i.e. custom gerber job generation) 2021-01-14 10:24:04 -03:00
Salvador E. Tropea a379fab270 More options to control the gerbers file names.
Ralated to "Protel" variants.
2021-01-13 16:58:03 -03:00
Salvador E. Tropea 3a78160638 More options to customize the excellon output.
zeros_format, left_digits and right_digits options.
2021-01-13 15:32:08 -03:00
Salvador E. Tropea 0e2d7f7ba4 More control over the name of the drill files.
The %i value can be set for N/PTH outputs.
2021-01-13 15:29:20 -03:00
Salvador E. Tropea 6efd735a74 Now layers can be selected using the default KiCad names. 2021-01-13 12:35:53 -03:00
Salvador E. Tropea bb4de91672 Fixed extra data about drill marks in gerber files.
We must use SetDrillMarksType(0) for gerbers.
2021-01-13 11:44:20 -03:00
Salvador E. Tropea 65833dc333 Internal BoM: The "Quantity" column no longer includes the DNF/C status.
- This status was moved to a separated column named `Status`.
- You can join both columns if you want.
Some people pointed out that adding characters to the qty column prevents
computations applied to the CSV files.
2021-01-12 15:21:34 -03:00
Salvador E. Tropea e0ab45e95d Now the default output name applies to the DRC and ERC report names.
This provides more coherent file names.
2021-01-12 13:44:09 -03:00
Salvador E. Tropea 45ac28a6bf Added support for KICAD_CONFIG_HOME defined from inside KiCad 2021-01-08 12:47:15 -03:00
Salvador E. Tropea 9a1e1f39e7 Internal BoM: added `no_conflict` option.
Used to exclude fields from conflict detection.
2021-01-05 12:09:29 -03:00
Salvador E. Tropea d334599e3b Bumped version to 0.9.0. 2021-01-04 16:32:06 -03:00
Salvador E. Tropea c626f864f9 The step output now can download missing 3D models. 2020-12-30 15:22:00 -03:00
Salvador E. Tropea 7165750496 Added some documentation about the rotation filter. 2020-12-29 10:44:48 -03:00
Salvador E. Tropea 4a3e7faace Added a new filter used to rotate footprints.
Used to generate position files for some manufacturers like JLC.
Also in this patch:
- Now position files are naturally sorted (R10 after R9, not after R1)
- Position files in CSV format quotes only the columns that could
  contain an space. Just like KiCad does.
- Fixed: Generic filter `include_only` option worked only when debug
  enabled.
2020-12-28 18:26:27 -03:00
Salvador E. Tropea 0f7a55dc8b Added support to generate negative X positions for the bottom layer 2020-12-28 09:30:33 -03:00
Salvador E. Tropea 9f8ecff5d1 Added support to rename fields matching the variant to value. 2020-12-23 12:11:39 -03:00
Salvador E. Tropea 986f0c7157 KiBoM variants: support to field overwrite according to variant 2020-12-18 15:39:58 -03:00
Salvador E. Tropea bb3087c996 Added a hint for pip installations without using `--no-compile`.
Closes #31
2020-12-16 12:40:56 -03:00
Salvador E. Tropea 26d81d6475 Added support for missing field names in libraries.
- Closes #32
- Reported on SnapEda libs
2020-12-16 12:16:03 -03:00
Salvador E. Tropea d201843b6a File name patterns are allowed for the `netlist_file` option.
- Closes #33
- File name patterns: %F is the name of the source file without
  extension, but with the path.
2020-12-16 11:10:36 -03:00
Salvador E. Tropea 4d0a154632 Bumped version to 0.8.1 2020-12-09 12:58:01 -03:00
Salvador E. Tropea 7248258672 Added Internal BoM HTML details.
- highlight cell when hover.
- allow to jump to REF of row number using anchors.
2020-12-09 11:32:37 -03:00
Salvador E. Tropea 1248e92b95 Fixed Internal BoM separator wasn't applied when using `use_alt`
From the SchrodingersGat/KiBoM#145 PR.
2020-11-11 14:32:20 -03:00
Salvador E. Tropea 019cb0c8a4 Bumped version to 0.8.0.
Also Python version to 3.6 (mcpyrate)
2020-11-06 13:51:19 -03:00
Salvador E. Tropea 577713efeb Fixed excellon drill output.
When using unified output and not using default KiCad names.
Fixes #25
2020-11-02 16:07:05 -03:00
Salvador E. Tropea b27872d7e8 Fixed problems when using the `pdf_pcb_print` on special case.
When using variants to remove a component with ridiculous pads
that only has solder paste (no copper, nor even solder mask
aperture).
2020-10-27 17:58:51 -03:00
Salvador E. Tropea de9628e5c1 Added columns configuration for position files.
You can customize which columns are used, their names and order.
Closes #22
2020-10-23 14:18:11 -03:00
Salvador E. Tropea 86ead74c27 Added KiBot warning filters.
- Closes #15
- This patch also changes the logging initialization, that was broken at
  some recent point.
- Also adds tests to ensure the mechanism used to avoid repeated
  warnings is working.
2020-10-12 16:31:47 -03:00
Salvador E. Tropea 1aee407cb9 Fixed KiBom variants special cases.
When using multiple variants and a components used more than one,
specifying oposite rules.
2020-10-09 16:00:52 -03:00
Salvador E. Tropea 4ea81d80a3 Added test for filter help. 2020-10-09 11:59:13 -03:00
Salvador E. Tropea 71fe37cfc6 Support for new `pcbnew_do export` options. 2020-10-09 11:27:30 -03:00
Salvador E. Tropea 27e4c23236 Added support for reference separator in BoMs.
So you can get things like "R1, R2, R3"
From the following PR: SchrodingersGat/KiBoM#139
by @n0dyjeff
2020-09-19 17:35:31 -03:00
Salvador E. Tropea f131be6bd9 Bumped version to 0.7.0 2020-09-11 17:55:03 -03:00
Salvador E. Tropea af567b611f Bumped version to 0.7.0rc2 2020-09-11 12:54:33 -03:00
Salvador E. Tropea 5be4a64293 Bumped version to 0.7.0rc1 2020-09-10 16:03:03 -03:00
Salvador E. Tropea 23e46df1c5 Added variants support to the PCB print (PDF)
Needs some adjustement, but is working.
2020-09-07 19:26:16 -03:00
Salvador E. Tropea 0e394b468b Added variants support to the schematic SVG print. 2020-09-06 18:22:38 -03:00
Salvador E. Tropea 7e5791fcfa Added variants to the IBoM output. 2020-09-05 17:48:25 -03:00
Salvador E. Tropea d09400d49d Added support for variants to the PcbDraw output. 2020-09-04 18:08:22 -03:00
Salvador E. Tropea cf46a8ba86 Added variants support to the STEP output.
3D Models of excluded components are removed.
2020-09-03 18:50:30 -03:00
Salvador E. Tropea 49d0867001 Updated the changelog. 2020-09-03 17:20:38 -03:00
Salvador E. Tropea 6fa903ed8f Added the schematic print variants support to the changelog. 2020-09-02 10:30:40 -03:00
Salvador E. Tropea 15cf4072e2 Added the new functionality to the CHANGELOG 2020-08-30 12:06:13 -03:00
Salvador E. Tropea 58fd473a41 Bumped version to 0.6.2. 2020-08-25 13:48:26 -03:00
Salvador E. Tropea ee69de6e7d Problems with PcbDraw when generating PNG and JPG.
Currently the script uses ImageMagick library. But the SVG conversion
is handled unreliably. ImageMagick has various backends to do it and
some of them don't work. I saw this problem many times, and is now
affecting my system. A more reliable conversion can be achieved using
`rsvg-convert`. Isn't as good as InkScape, but is smaller and works
well.
In the process I'm trimming the extra blank space generated by
PcbDraw when we have objects in layers like "User Drawings" that
extends beyond the PCB size.
I'm also compressing JPGs more aggressively, this makes a real
difference between PNG and JPG outputs. Otherwise the difference
is too small.
2020-08-25 13:16:49 -03:00
Salvador E. Tropea e08f70e78e No warnings about malformed value for DNFs
Now if the component value is any of the DNF values we avoid parsing it
as a real value.
2020-08-25 09:21:55 -03:00
Salvador E. Tropea d80b145af9 Now extra spaces in user fields are discarded.
The code strips spaces at the beggining and end of user field values.
2020-08-25 09:12:46 -03:00
Salvador E. Tropea 140a45fdc6 Fixed variants BoM logic.
The variants logic for BoMs when a component resquested to be only
added to more than one variant.
This is related to SchrodingersGat/KiBoM#136 issue.
2020-08-24 10:53:56 -03:00
SET c1d9dd3bfa Bumped version to 0.6.1.
Updated CHANGELOG and Debian version.
Also minor details in Debian dependencies.
2020-08-20 10:16:05 -03:00
SET bcb25979c3 Updated the changelog for v0.6.0 2020-08-18 13:23:09 -03:00
SET 6ed344cfd6 Updated the README, generic example and CHANGELOG.
SVG output for all and internal BoM for the CHANGELOG.
2020-08-16 17:37:48 -03:00
Salvador E. Tropea 7dc94bf7be Added default output file name pattern.
Can be applied to all outputs.
2020-07-23 18:26:03 -03:00
Salvador E. Tropea 43b97db20c Now IBoM output file is coherent with other outputs.
The user can select the IBoM name mechanism, but the default is to use
a name coherent with all the other outputs.
2020-07-22 19:51:35 -03:00
Salvador E. Tropea 64bbf3d6e3 Updated the documentation and example.
- Output filenames changes.
- KiBoM configuration.
2020-07-22 18:35:24 -03:00
Salvador E. Tropea d5168c37cd Added filename expansion for SCH related outputs.
pdf_sch_print is the first to support it.
2020-07-13 19:20:25 -03:00
Salvador E. Tropea 9d10c991da Changed default name for step files (adds -3D) 2020-07-12 18:55:08 -03:00
Salvador E. Tropea 031c69e27c Added `position` output configuration. 2020-07-12 18:46:37 -03:00
Salvador E. Tropea 36eedc9fce Added `drill` output configuration 2020-07-12 17:43:15 -03:00
Salvador E. Tropea b8b1277f5f Drill map file names can be configured. 2020-07-12 17:01:23 -03:00
Salvador E. Tropea 41de8c032c Added `output` option to control the file name to all plot output formats. 2020-07-12 13:00:38 -03:00
Salvador E. Tropea e2854ef524 Added gerber.gerber_job_file option to control the gerber job file name. 2020-07-12 12:28:00 -03:00
Salvador E. Tropea 63999aa009 Preflight filters parsed by Optionable class.
This makes the filters similar to output options.
- Adds coherence to error messages.
- Enable aliases (used the ones suggested by @leoheck)
Additionally now the README.md preflights documentation comes directly
from --help-preflights
2020-07-12 11:52:44 -03:00
Salvador E. Tropea 9fdc02ecea Added aliases for options.
The test case is the pdf_pcb_print.output_name, which is different than
other *.output options. Now output_name is an alias for output.
2020-07-12 09:41:16 -03:00
Salvador E. Tropea 2dab2417e0 Bumped version to 0.5.0 2020-07-11 14:02:09 -03:00
Salvador E. Tropea 52e6bb1b5f Added support for PcbDraw 2020-07-11 13:49:03 -03:00
Salvador E. Tropea 38baa62cbe Fixed ERC/DRC error count report. 2020-07-08 19:28:07 -03:00
Salvador E. Tropea 922b853084 Fixed ignore_unconnected.
Also added a test and a test for the error type.
Additionally the BasePreflight now provides default run/apply members.
2020-07-08 16:29:30 -03:00
Salvador E. Tropea 4368364489 Refactored the BaseOutput class to make it more similar to the YAML
Now the options are just an attribute of the outputs.
It means we have a set of classes for the options.
All the output content is parsed by the classes, including the Layers.
Now the layers support a simple string (with interesting shortcuts), a list of
strings or the original list of dicts.
2020-07-08 15:17:24 -03:00
Salvador E. Tropea ee11ecf8e7 Added number, variant, conf and separator KiBoM options. 2020-07-02 23:30:57 -03:00
Salvador E. Tropea ec35d2443f Added option to copy plot options from the PCB to the YAML example.
Also added DXF.metric_units and updated the README.
2020-07-01 20:43:03 -03:00
Salvador E. Tropea 3a1d5d0652 Added pen_number and pen_speed HPGL options 2020-07-01 11:11:33 -03:00
Salvador E. Tropea 4ae54f3ded Added --example/-x option to generate a configuration example.
The example contains all the available preflights and outputs.
If the user specifies a PCB the names of the layers are from the provided PCB
2020-06-30 20:09:14 -03:00
Salvador E. Tropea 3c6f4950c7 Now the schematic can be specified separately.
We now test if the PCB and/or SCH are there only when we need them.
2020-06-29 19:25:54 -03:00
Salvador E. Tropea 42d1f14056 Now layers are solved when we really need it.
So we can do some operations (like --list) without loading the board.
Also: now the names for the layers are asked to pcbnew classes (not from file)
2020-06-29 12:55:02 -03:00
Salvador E. Tropea c82c2f0c39 Added support for all the missing IBoM options.
Note that variants_blacklist and variants_whitelist needs a fresh IBoM.
These options didn't work and crashed IBoM. It was reported as a result of
the tests included in this commit.
2020-06-27 15:04:35 -03:00
Salvador E. Tropea 2f0f3f755d Changed the command line parser from argparse to docopt.
This make the code cleaner and better documented.
Now the usage is more clear, and also a little bit more strict.
I'm using a modified docopt because I preffer using args.option instead of
args['--option'], I also fixed a few flake8 issues in docopt.py.
2020-06-26 12:04:56 -03:00
Salvador E. Tropea 46a20404a4 Added preflights help. 2020-06-25 10:31:23 -03:00
Salvador E. Tropea 523aaa2ace Added the map/report stuff to the changelog. 2020-06-25 09:43:14 -03:00
Salvador E. Tropea 6295b00657 Implemented the `sketch_plot` option. 2020-06-24 12:00:53 -03:00
Salvador E. Tropea 090aa6b8f1 Removed the "plot" option "check_zone_fills".
Not used and overlapped with the preflight option.
2020-06-24 11:26:08 -03:00
Salvador E. Tropea ac4ae89aba Added command line help for the outputs.
--help-list-outputs list supported outputs
--help-outputs list details for the supported outputs
--help-output OUTPUT shows the help for this particular output
2020-06-24 11:02:17 -03:00
Salvador E. Tropea c2c221151b Bumped version to 0.4.0. 2020-06-17 15:38:49 -03:00
Salvador E. Tropea 7df1e9fe87 Added documentatio for the new output 2020-06-15 16:18:40 -03:00
Salvador E. Tropea 8fbcffba0f Bumped version to 0.3.0 2020-06-14 15:28:25 -03:00
Salvador E. Tropea 0d9256fb24 The 'check_zone_fills' option is now independent of 'run_drc'
Implemented in a different way.
For all internal commands now we use Python bindings to fill the zones as
suggested by @arikrupnik in johnbeard/kiplot#11
For 'print_pcb' now we ask KiCad to do it before printing (needs v1.4.1)
2020-06-14 15:12:56 -03:00
Salvador E. Tropea 4101f69cd4 Added support for compressed YAML files. 2020-06-14 11:05:08 -03:00
Salvador E. Tropea 61f1ebbab2 Better debug info, fixed errors and no .kicad_pcb dependency
- When a BoM operation fails now we show the output of the child process.
  (Only enabled when using debug verbosity)
- The error levels 1 and 2 were overlapped with internal Python codes.
- Now we delay the PCB load until we really need it. Which could be never.
2020-06-12 15:10:56 -03:00
Salvador E. Tropea aef19e31c7 Bumped version to 0.2.5 2020-06-11 13:10:45 -03:00
Salvador E. Tropea 16e587f7c6 Added new feature to the changelog. 2020-06-09 14:07:21 -03:00
Salvador E. Tropea 103ef8b79e Fixed: Most formats that needed layers didn't complain when ommited 2020-05-26 13:50:38 -03:00
Salvador E. Tropea c22ccb607a Fixed: All pcbnew plot formats generated gerber job files 2020-05-25 18:31:31 -03:00
Salvador E. Tropea b053017284 Tolerate config files without outputs 2020-05-20 10:36:28 -03:00
Salvador E. Tropea 84831cbdfc Bumped version to 0.2.4. 2020-05-19 12:14:06 -03:00
Salvador E. Tropea c22b4862ca Updated the changelog 2020-05-19 11:40:24 -03:00
Salvador E. Tropea 1128a251b2 Added a changelog with changes for this fork 2020-05-15 10:38:48 -03:00