Commit Graph

571 Commits

Author SHA1 Message Date
Salvador E. Tropea 67427d9eff Removed the `_both_related` from `compress`.
- Needs more elaboration
2021-11-19 10:57:52 -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 22b946ecf1 Added `id_add` to `render_3d` to change the %i expansion
- Closes #110
2021-11-18 14:04:44 -03:00
Salvador E. Tropea 4537a1e061 Removed temporal projects created during `render_3d`
- See #110
2021-11-18 13:52:04 -03:00
Salvador E. Tropea 2a09151a18 Fix for the commit 10486af51a
- italic and bold must be bool
2021-11-18 12:18:39 -03:00
Salvador E. Tropea 4cbebb6622 Added width, height and orthographic to `render_3d` output. 2021-11-17 18:19: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 365ca790d5 Changed output.dir default to `./`
- Makes easier to concatenate using `+DIR`
2021-11-16 06:44:01 -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 813a5f9917 Removed extra W_BADVAL1 (no longer used) 2021-11-15 14:29:36 -03:00
Salvador E. Tropea ed8ae423e2 Fixed missing "where" in W_BADVAL3 2021-11-15 14:28:56 -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 5620113b49 Fixed command line for `--list`
- PCB and SCH can be needed
- Adapted the test for --list
2021-11-15 13:38:35 -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 088027c174 Fixed problems with schematic fields containing double quotes.
- Fixes #98
2021-11-15 12:50:22 -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 3497033ef8 Changed kicad-pcb.org -> kicad.org 2021-11-01 10:12:30 -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 18b72a41b0 Added support for KiCad symbol libs without EOF comment. 2021-10-18 14:47:09 -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 a7bde6d01f Added comment about the KISYS3DMOD patch 2021-10-14 13:29:55 -03:00
Salvador E. Tropea 79c4f75e7d Added fallback for missing KiCad 3D models config.
Fixes #91
2021-10-14 13:22:01 -03:00
Salvador E. Tropea d93c050a7e Fixed spaces in netnames for the Board View format.
Fixes #90
2021-10-12 09:01:10 -03:00
Salvador E. Tropea 54cce8ae73 Fixed Board View flipped vertically. Fixes #89 2021-10-12 08:36:09 -03:00
Salvador E. Tropea 6ebe1f217d Fixed another error message in the import logic. 2021-10-04 16:08:35 -03:00
Salvador E. Tropea 9e4291ae42 Fixed some `import` error messages
- Some errors not detected
- Errors in the error reporting
2021-10-04 15:50:50 -03:00
Salvador E. Tropea 9da44aeafc Fixed flake8 errors
- Missing imports
- Missing "self." qualifier
- Relaxed comlexity
2021-10-04 15:03:11 -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 b7b39d4bfe Added explanation for ERC on schematics not fully annotated
Related to #86
2021-09-21 13:14:06 -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 40a42513ba Added suport for schematic cache files when components are missing
Fixes #83
2021-08-24 14:37:50 -03:00
Salvador E. Tropea 8fd6900655 Fixed: no custom title block when printing a variant.
Fixes #82
2021-08-24 12:42:16 -03:00
Salvador E. Tropea c69ef6c274 Fixed problems when trying to filter KiCost warnings. 2021-08-24 10:37:26 -03:00
Salvador E. Tropea 3bdae8507a Added suppport for multiprojects to the internal KiCost.
- Also changes the KitSpace queries format to be more readable.
2021-05-25 18:02:22 -03:00
Salvador E. Tropea fb99ef375b Added Debian sid version mess workaround.
Closes #75
2021-05-18 21:43:17 -03:00
Salvador E. Tropea 1d5f4cc470 Cut line too long (flake8) 2021-05-11 12:32:55 -03:00
Salvador E. Tropea 596cf54fec Adapted the KiCost initialization to the last changes 2021-05-11 12:12:27 -03:00
Salvador E. Tropea 717a2cfbb7 Removed repeated domain on logging logers. 2021-05-11 11:52:12 -03:00
Salvador E. Tropea 7c23381adb Added distributors selection to KiCost+KiBot 2021-04-28 12:13:12 -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 798fdc3e34 Updated help strings and reverted side match patch. 2021-04-25 12:06:43 -03:00
Salvador E. Tropea 0a853594c2 Merge branch '60-invert-bottom' of https://github.com/frankleonrose/KiBot into frankleonrose-60-invert-bottom 2021-04-25 11:58:36 -03:00
Salvador E. Tropea e391f513ec Bumped version to 0.11.0. 2021-04-25 11:24:49 -03:00
Salvador E. Tropea 496de2712f Give priority to submodule in out_kicost 2021-04-25 10:45:16 -03:00
Salvador E. Tropea 80f64e7b19 Fixed missing variable when KiCost wasn't used 2021-04-25 09:59:23 -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 1d44a6a551 Added cell size adjust to the KiCost worksheet. 2021-04-16 10:25:31 -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 2689ccbca2 Made the ibom output smarter about the netlist
- Now a warning is issued if needed and absent
- We now also pass it to iBoM if needed and is there
Fixes #68
2021-04-12 12:42:26 -03:00
Frank Leon Rose 5c88dec5bc Use match_string for more selective power 2021-04-07 08:33:37 -04:00
Frank Leon Rose b946e519fb _top & _bottom select all components on a side 2021-04-05 22:15:22 -04:00
Frank Leon Rose 6e0deccdc1 Add invert_bottom parameter 2021-04-05 21:52:50 -04:00
Salvador E. Tropea f6fb9c21de
Merge pull request #63 from sethkaz/master
Fixed some typos in README.md
2021-04-01 08:44:22 -03:00
Salvador E. Tropea 1f46e284f9 Fixed STEP output problems.
When downloading missing 3D models, but not filtering them.
2021-04-01 08:32:13 -03:00
Salvador E. Tropea 0f8eb6af2c Added detection of gzip compressed configuration files. 2021-04-01 08:08:20 -03:00
Salvador E. Tropea dc7ef486a0 Made the schematic name detection smarter.
Should Fix #62
2021-04-01 08:05:55 -03:00
Seth Kazarians 7e722caf40 Fixed Typos in source files per recommendation from @set-soft. 2021-03-31 15:10:21 -07: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 91dc9c5488 Added support for filters that adds/removes components.
- Intended for BoM transformations
- Also enhanced the support for filter chains
2021-03-19 19:20:53 -03:00
Salvador E. Tropea c88dceb6dc Added a BoM option to disable the ceil() "rounding" 2021-03-19 12:46:37 -03:00
Salvador E. Tropea 0402a65c8b Added support for a component attribute qty.
Is the ammount of the part used.
By default is 1, but can be another value.
2021-03-19 11:53:03 -03:00
Salvador E. Tropea 4d3c3d43b3 Added fields fallbacks to the BoM grouping fields.
Used when the field used to group components is empty.
2021-03-19 11:48:45 -03:00
Salvador E. Tropea fa002356d0
Merge pull request #57 from bbernhard/parsing_fix
be more tolerant when parsing libraries
2021-03-12 21:22:41 -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 a5b3b0569f Fix `out_pcb` and `out_sch` targets
Introduced by c104d14511
2021-03-12 15:02:36 -03:00
Bernhard B c13ac04927 be more tolerant when parsing libraries
Some SnapEDA libraries (e.g https://www.snapeda.com/parts/TS3A27518EPWR/Texas%20Instruments/view-part)
use the token "# End Library" instead of "#End Library" to mark the end
of the library.
2021-03-08 15:19:24 +01: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 c82485acc8 Added remove of forced video in GitLab CI
Note that this video recording is needed in the tests, but I don't know
why.
2021-02-22 12:55:02 -03:00
Salvador E. Tropea 9e33b7a774 Trying to force KiAuto record on GitLab CI/CD 2021-02-22 12:25:14 -03:00
Salvador E. Tropea 3499087e86 Test disabling the KiAuto record.
This is just a test trying to solve GitLab issues.
2021-02-22 11:13:59 -03:00
Salvador E. Tropea 57c517d02b Passed the same verbosity level to KiAuto scripts. 2021-02-18 12:47:21 -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 8d5c0109f9 Bumped version to 0.10.0 2021-02-12 16:08:46 -03:00
Salvador E. Tropea a0218e92ab Removed dead code. 2021-02-12 15:03:39 -03:00
Salvador E. Tropea 32310ba1fa Added test for makefile generation running the script from system. 2021-02-12 14:56:51 -03:00
Salvador E. Tropea b718bc671e Removing extra debug 2021-02-12 13:31:31 -03:00
Salvador E. Tropea d5a1df9eb7 Modified test suite to collect the error in test_search_as_plugin_ok 2021-02-12 13:10:22 -03:00
Sabol Martin 234a57cfc6 fix: Part containing more then 9 units (2 digits present). Start line parsing with TAB instead of unit number 2021-02-12 16:16:16 +01:00
Salvador E. Tropea a49d4e45fa Added import tests. 2021-02-12 11:40:26 -03:00
Salvador E. Tropea 0c351200a2 Fixed list of compress dependencies.
Wrong again.
2021-02-11 13:28:17 -03:00
Salvador E. Tropea 9b34cf20d9 Removed debug message (oops!) 2021-02-11 12:52:01 -03:00
Salvador E. Tropea dabe2ae6bf Avoid running the outputs when collecting the dependencies.
Introduced by the last patch.
2021-02-11 12:37:09 -03:00
Salvador E. Tropea 3f565b616a Makefiles generated with debug enabled contains debug stuff.
- pass the verbosity to kibot
- logs to the console
- shows the command executed
2021-02-11 11:56:55 -03:00
Salvador E. Tropea d228c2628b Now compress targets doesn't depend on PHONY targets
This avoids redoing the archive if all dependencies are already
generated.
2021-02-11 11:55: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 befbcc3fe3 Force the output and variant names to be strs 2021-02-11 09:37:05 -03:00
Salvador E. Tropea d104c06cef Reduced the complexity of generate_makefile 2021-02-11 08:45:33 -03:00
Salvador E. Tropea b5648b1231 Added the KiBot config as depenency for all makefile targets.
Any change in the configuration forces a refresh of all targets.
2021-02-10 20:30:41 -03:00
Salvador E. Tropea 20a64aa2bb Added more PCB/SCH makefile targets. 2021-02-10 20:15:41 -03:00
Salvador E. Tropea a2d5ad294c Added makefile targets for PCB/SCH related stuff (pre and all). 2021-02-10 20:08:20 -03:00
Salvador E. Tropea 99dfbbd99d Use the full path for kibot in the makefile if not installed.
When we detect the run isn't from the system installation.
2021-02-10 19:47:15 -03:00
Salvador E. Tropea f744892810 Fixed: erc/drc not taking global.output pattern. 2021-02-10 16:51:17 -03:00
Salvador E. Tropea 7861f6efe6 Removed debug message about KiCad bug, now we are using a workaround. 2021-02-10 14:13:07 -03:00
Salvador E. Tropea 12bfa88677 Fixed the way we restore stderr after temporarily supressing it.
Now we don't mess with `sys.stderr` we just use `os.dup2` to restore it
from the copy.
2021-02-10 14:10:10 -03:00
Salvador E. Tropea 67cee9988a Added workaroud for KiCad printing wxWidgets "traits" errors. 2021-02-10 09:40:41 -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 ce0f22edce Adjusted some details about the time-out control
- Warning when detected pointing to use the global options
- Now pcbnmew_do/eeschema_do output is captured
- Warning when using floating value for kiauto_wait_start (no fail)
- A simple test for time-out
Fixes #48
2021-02-08 12:07:54 -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 880c9c8260 Fixed extra separator in references for merged BoMs. 2021-02-05 11:30:54 -03:00
Salvador E. Tropea f35207d097 Fixed range references for merged BoMs 2021-02-05 11:08:14 -03:00
Salvador E. Tropea db3cb1998e Fixed stats for merged BoMs without ref_ids. 2021-02-05 11:00:54 -03:00
Salvador E. Tropea 91b38fdb9f Fixed to allow BoM consolidation without `ref_id` 2021-02-05 10:24:35 -03:00
Salvador E. Tropea 2d338bada7 Removed dead code in macros.py 2021-02-04 16:38:38 -03:00
Salvador E. Tropea 536fa4708a Fixed get_components. 2021-02-04 16:25:59 -03:00
Salvador E. Tropea 41c667cb1f Added test for unknown prefix in units. 2021-02-04 16:17:34 -03:00
Salvador E. Tropea ae49289006 Removed dead code in v5_sch.py 2021-02-04 16:16:04 -03:00
Salvador E. Tropea 047fe53e1d Added tests for step and pdf_pcb_print command fails. 2021-02-04 16:09:50 -03:00
Salvador E. Tropea 0babc286af Modified the tests to cover the missing lines. 2021-02-04 13:40:14 -03:00
Salvador E. Tropea 9f2344ed4a Added tests for macros applied to stuff not currently used. 2021-02-04 13:06:44 -03:00
Salvador E. Tropea fa7fe0a5d6 Added test for undocumented plug-in in example generation. 2021-02-04 11:45:53 -03:00
Salvador E. Tropea fa7dde3008 Added test for undocumented filter. 2021-02-04 11:33:52 -03:00
Salvador E. Tropea dd28c63089 Added test for undocumented preflight. 2021-02-04 11:27:57 -03:00
Salvador E. Tropea 03a5a6d295 Fixed exception when a plug-in class doesn't have a docstring. 2021-02-04 11:13:40 -03:00
Salvador E. Tropea ba6787660c Added test for undocumented option. 2021-02-04 10:42:02 -03:00
Salvador E. Tropea 9807bcb13f Fixed exception on undocumented options. 2021-02-04 10:40:42 -03:00
Salvador E. Tropea 2a93f97abd Removed no longer needed import 2021-02-03 16:07:12 -03:00
Salvador E. Tropea 9a703186de Removed useless test in out_step.
The undo_3d_models can't be empty when calling undo_3d_models_rename.
In the worst case won't do any damage doing the loop.
2021-02-03 12:54:05 -03:00
Salvador E. Tropea d1ef2c8cbf Added style dependency in pcbdraw makefile target.
- Also now we make sure the style is an existent file.
2021-02-03 12:41:30 -03:00
Salvador E. Tropea 1ad91dbbd8 Excluded KiCad 6 code from coverage in gerber output. 2021-02-03 10:14:42 -03:00
Salvador E. Tropea 79fe05ed9f Added makefile test for sch_variant case.
- Also avoided to repeat the same SCH dependency more than once.
2021-02-02 11:55:36 -03:00
Salvador E. Tropea 56fa06ef15 Added test for missing id in position columns.
Also excluded KiCad 6 code from out_position.
2021-02-02 11:17:09 -03:00
Salvador E. Tropea ec273da57b Removed dead code in log.py. 2021-02-02 10:56:46 -03:00
Salvador E. Tropea 9943b82807 Removed KiCad 6 code from coverage. 2021-02-01 17:24:31 -03:00
Salvador E. Tropea 10f0706482 Exclude KiCad 6 code and enabled coverage for out_base tests. 2021-02-01 16:39:10 -03:00
Salvador E. Tropea c67965c91b Excluded KiCad 6 code in main from coverage. 2021-02-01 15:26:08 -03:00
Salvador E. Tropea 76db8a65e4 Removed KiCad 6 code from coverage. 2021-02-01 14:52:52 -03:00
Salvador E. Tropea 003fa15715 Support for mcpyrate macros deactivation. 2021-02-01 14:51:42 -03:00
Salvador E. Tropea af29f802c0 Switched from configfile.readfp to configfile.read_file for Python 3 2021-02-01 11:14:57 -03:00
Salvador E. Tropea 7bf0f90134 Updated mcpyrate.
The old one didn't work with Pytest 6.0.2.
2021-02-01 11:13:52 -03:00
Salvador E. Tropea 7422e9726c Removed some "no cover" comments, clasified the rest 2021-02-01 08:53:24 -03:00
Salvador E. Tropea d796abde2e Separated some complex tests from the test_misc.
- Moved them test_misc_2
- Refined the tests in test_misc_2 to work together
2021-01-29 13:28:29 -03:00
Salvador E. Tropea adc181f1b2 Fixed drill dependencies generation. 2021-01-29 11:53:41 -03:00
Salvador E. Tropea f28b7a56b8 Changed the error about using external (unknown) names to a warning. 2021-01-29 11:23:46 -03:00
Salvador E. Tropea 2764e087e8 Fixed makefile generation of incomplete targets. 2021-01-29 11:23:09 -03:00
Salvador E. Tropea d20d7e5d5c Fixed STEP dependencies generation. 2021-01-29 10:36:33 -03:00
Salvador E. Tropea 0dbb180cb7 Fixed run_erc and run_drc makefile targets.
When the schematic and board aren't loaded.
2021-01-29 09:25:56 -03:00
Salvador E. Tropea 37eefac973 Added tests for some ouyt_compress special cases.
- No rar
- rar fails
- rar file exists
- Empty output
2021-01-28 17:33:01 -03:00
Salvador E. Tropea c31c2c17c2 Removed trailing spaces (flake8) 2021-01-28 15:37:44 -03:00
Salvador E. Tropea c6ad93dc78 Added clarification about the need of dot in edge_cut_extension option. 2021-01-28 15:37:28 -03:00
Salvador E. Tropea 84470bbc11 Added first makefile generation test 2021-01-28 12:43:01 -03:00
Salvador E. Tropea d422d380af Commented out unused code in ansi.py 2021-01-27 15:07:51 -03:00
Salvador E. Tropea 2acc6c268d Fixed range reference generation for multiple projects 2021-01-27 11:50:10 -03:00
Salvador E. Tropea bb3b9c008b Sorted the `Source BoM` column 2021-01-27 11:48:19 -03:00
Salvador E. Tropea 409df8cca0 Fixed minimum KiCad version required is 5.1.6.
- KiCad 5.1.5 lacks GetBuildVersion()
- Fixes #45
2021-01-26 12:42:49 -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 50f38ea71b We no longer need to plot the files to know the KiCad's name.
Much faster.
2021-01-18 17:23:27 -03:00
Salvador E. Tropea 88cd5927dc Now you can ask to compress the targets of an output (by out put name) 2021-01-18 16:12:30 -03:00
Salvador E. Tropea b347a6ca30 The board object is no longer passed to run methodes.
The global GS.board is used instead.
2021-01-15 14:14:17 -03:00
Salvador E. Tropea 159e8996e8 Added support for ZIP/TAR/RAR generation. 2021-01-15 13:33:33 -03:00
Salvador E. Tropea f9dbaf4619 Saved one line of code (merged 2) 2021-01-15 13:32:06 -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 aa3025b348 Updated (c) year 2021-01-14 10:23:29 -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 923378fa96 Fixed flake8 style details. 2021-01-13 16:57:35 -03:00
Salvador E. Tropea 3d37e19b46 Skip missing layers with a warning.
When using "any layer" outputs.
This is needed now that we can specify generic names.
2021-01-13 16:53:24 -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 ceb6bbe52a Unified the capitalization after colons. 2021-01-12 15:39:05 -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 3e06f43ee2 Best KiCad config path detection.
- Added GetSettingsManager() call (new)
- Added message about KiCad 5 bug (6989)
- Added comment about KICAD_CONFIG_HOME bug.
2021-01-11 12:51:46 -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 73a35762e6 Added support to detect KiCad config path for KiCad 5.99+
New API, no compat fallback ...
2021-01-06 14:23:19 -03:00
Salvador E. Tropea b3e2d67871 Now we use KiCad to detect where is its configuration.
No more KiCad copycat code.
2021-01-06 13:49:24 -03:00
Salvador E. Tropea ab9071b693 Moved pcbnew detection from kiplot.py to __main__.py.
Now the KiCad version is printed when debug is enabled.
2021-01-06 12:25:54 -03:00
Salvador E. Tropea 4be9421f92 More details to make explicit the user must edit the example. 2021-01-06 12:25:07 -03:00
Salvador E. Tropea a6c4bd3bc9 Made clear that generic_plot.kibot.yaml is just a template.
Closes #40
2021-01-05 15:14:22 -03:00
Salvador E. Tropea b0cc64e5c5 Various fixes in the generated example.
- Now we can have a `example` different than the default.
- Added some _default members
- Support for missing schematic when using --list

Related to #40
2021-01-05 15:06:23 -03:00
Salvador E. Tropea 86a62bb8ff Fix example generation for list(dict) cases.
Related to #40
2021-01-05 13:53:00 -03:00
Salvador E. Tropea 6eba98d27f Fix incomplete pre-flight comments in generated example.
Related to #40
2021-01-05 13:34:08 -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 2da936ec11 Adds sub-part to multipart references. 2021-01-05 11:29:28 -03:00
Salvador E. Tropea d334599e3b Bumped version to 0.9.0. 2021-01-04 16:32:06 -03:00
Salvador E. Tropea edd4a72277 Better handling of empty type/name attributes in YAML config.
From #38
2021-01-04 16:27:52 -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 5d6bdeb9e2 Fixed rot_footprint filter reset. 2020-12-29 12:33:50 -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 007fc36d1e Fixed the components fields reset mechanism.
My previous approach was incomplete.
2020-12-23 18:47:11 -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 204ad189de Changed how variant field renamer is implemented.
- Now is a separated filter type (`var_rename`).
- Now all variants support a `pre_transform` filter list.
- An internal `_var_rename` filter is defined (default).
2020-12-23 10:19:23 -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
Stavros Korokithakis aae76c6388
Fix import issue when a shorter base path matches before a shorter one 2020-12-09 16:49:18 +02: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 b09c860573 Added support for KiCad 5.99 "disableapertmacros" option. 2020-11-06 17:05:33 -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 8fb99d8adf Adjusted flake8 details 2020-11-02 16:06:02 -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 dfd3ac8881 Added support for colorama.
This isn't really needed, but makes the port to Windows easier.
2020-10-24 17:07:58 -03:00
Salvador E. Tropea 68269c10f1 Avoid KiAuto warnings about missing project for pdf_pcb_print
This applies to cases using variants.
Now we copy the current project to the temporal location.
Closes #23
2020-10-24 16:25:09 -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 a623d9168c Adapted to last KiCad 5.99 Python interface.
- SKETCH and FILLED are defined again.
- SetDXFPlotUnits type is now exported.
2020-10-22 13:03:31 -03:00
Salvador E. Tropea 1a77b2d007 Added support for build versions of KiCad compiled locally. 2020-10-22 13:01:53 -03:00
Salvador E. Tropea 263b9c41e4 Fixed log.init() errors when pcbnew/yaml modules aren't installed.
Also added tests for these cases.
2020-10-20 11:41:01 -03:00
Salvador E. Tropea 14cdd33c6d Added support for the KiCad 6 default layer names.
Not deeply tested.
KiCad 6 support user names for technical layers, and assigns new
names to them.
2020-10-19 16:47:13 -03:00
Salvador E. Tropea dbcbbfeb47 Fixed missing GS declarations. 2020-10-19 16:04:03 -03:00
Salvador E. Tropea 66e6bdf5b6 Disabled more line width code for KiCad 6. 2020-10-19 16:00:21 -03:00
Salvador E. Tropea 3977a55d4a Fixed indentation 2020-10-19 13:36:49 -03:00
Salvador E. Tropea 8a87a677e2 Fixed plot constant names
Too much cut & paste
2020-10-19 13:36:02 -03:00
Salvador E. Tropea 4fff3d27e9 KiCad 5.99 no longer supports PCB_PLOT_PARAMS.SetLineWidth() 2020-10-19 13:13:21 -03:00
Salvador E. Tropea 3579080e15 Added workaround for KiCad 5.99 bug.
PCB_PLOT_PARAMS.SetPlotMode argument values (SKETCH and FILLED) are
missing.
https://gitlab.com/kicad/code/kicad/-/issues/6070
2020-10-19 13:11:30 -03:00
Salvador E. Tropea 127ad89483 Added the name of the error to the tests when it fails.
Not just the error level.
2020-10-19 13:10:24 -03:00
Salvador E. Tropea 9c876d5783 Removed dead code in macros.py 2020-10-17 16:51:17 -03:00
Salvador E. Tropea d850bb8ffe
Merge pull request #19 from INTI-CMNB/try_mcpyrate
Replace mcpy by mcpyrate
2020-10-17 15:28:40 -03:00
Salvador E. Tropea 52a29c26d7 Implemented `de_activate` in mcpyrate.activate
This disables macros after loading the plug-ins.
Now the timing is 160 ms, 30% faster than `mcpy` and 4 times faster
than `macropy`
2020-10-17 15:01:21 -03:00
Salvador E. Tropea 307e553534 Added more info to the plug-ins load fail.
Trying to see why it fails (not in my docker image?!)
2020-10-17 12:03:33 -03:00
Salvador E. Tropea 2d55859782 Code style fixes (flake8) 2020-10-17 12:03:06 -03:00
Salvador E. Tropea 4538163e7e Removed all the code related to Python cache. 2020-10-17 12:01:52 -03:00
Salvador E. Tropea c29b5902c2 Enhanced the document macro coverage info.
- Recycled the s.value Str as @Technologicat suggested
- Added line number info to the target Name as I learned from the
  experiments test,
2020-10-17 11:11:24 -03:00