Commit Graph

1083 Commits

Author SHA1 Message Date
Salvador E. Tropea 1202351fed [Templates] Moved JLCPCB+stencil to a separated import
- So now the compress target includes the stencil
2023-01-05 08:36:17 -03:00
Salvador E. Tropea 94cd385725 [Tests] Adapted to the new missing import file message 2023-01-04 13:59:13 -03:00
Salvador E. Tropea bdffcfa508 [Internal templates] Added for all the known manufacturers 2023-01-04 13:47:03 -03:00
Salvador E. Tropea 638dcdf970 [Tests] Adjusted unknown output messages 2023-01-04 12:35:26 -03:00
Salvador E. Tropea 5a5967c6b3 [Added] Support for internal imports
- A mechanism to implement templates
- Also fixed some groups import issues
2023-01-04 11:39:48 -03:00
Salvador E. Tropea 17aacf8daf [Added] Support for `groups` of `outputs` 2023-01-04 08:38:21 -03:00
Salvador E. Tropea 7be6a5a7f4 [Tests] Marked more stuff as slow
- To avoid collisions
2023-01-03 14:04:03 -03:00
Salvador E. Tropea 08dd0258cd [Tests] Separated some of the dependency tests
- Marked slow, to avoid parallel execution
2023-01-03 12:56:41 -03:00
Salvador E. Tropea e125ed95e0 [Tests] Patched GS.exec_with_retry 2023-01-03 12:38:53 -03:00
Salvador E. Tropea 32325d4a7d [Tests] Adapted to the new exec_with_retry behavior 2023-01-03 10:34:17 -03:00
Salvador E. Tropea cfee399110 [Sub-PCB][Added] KiCad 5 workaround
- The GetBoundingBox member returns values with 1 IU of error (1 fm)
- So now we use at least 2 fm of tolerance
2023-01-02 10:42:19 -03:00
Salvador E. Tropea 1fdb8a6c4b Merge branch 'subpcb' into dev 2022-12-28 13:33:42 -03:00
Salvador E. Tropea eb911f35d1 [PCB_Print][Added] Support for sketch_pads_on_fab_layers
Closes #356
2022-12-28 13:26:15 -03:00
Salvador E. Tropea 284b9df12a [Any Layer][Added] Support for sketch_pads_on_fab_layers
Related to #356
2022-12-28 13:06:39 -03:00
Salvador E. Tropea 1e63ec66c5 [Sub-PCBs][Test] Enabled KiCad 5 tests
- Fixed new drill coordinates in test
- Renamed some YAML files
2022-12-28 11:37:56 -03:00
Salvador E. Tropea 728bded7ad [Sub-PCBs] Implementad annotation removal 2022-12-28 09:44:44 -03:00
Salvador E. Tropea 002dba631d [sub-PCB] Implemented the `tolerance` 2022-12-28 09:23:50 -03:00
Salvador E. Tropea 081932f8bb [sub-PCB] Now you can choose between internal implementation and KiKit 2022-12-28 08:48:50 -03:00
Salvador E. Tropea 27ea3f1d73 [Tests][Fixed] Small details
- How we test if pcbnew is there
- Adapted test cases to the current outputs
2022-12-27 13:29:56 -03:00
Salvador E. Tropea 1dbe58aab1 Moved sub-PCB specific stuff to var_base (from out_base)
- To allow more than one mechanism
- Also changed the order in which sub-PCBs are applied, will make
  things faster
- Also removed board as parameter for un/filter_pcb*
  Isn't really supported and the sub-PCBs clearly breaks it
2022-12-27 08:48:44 -03:00
Salvador E. Tropea bae5e91c7a [DOCs] Added render_3d and step sub-PCB examples. 2022-12-27 06:36:34 -03:00
Salvador E. Tropea 7760019bf0 [Position] Added support for sub-PCBs 2022-12-26 13:40:47 -03:00
Salvador E. Tropea 89be5dacdd [Populate] Added support for sub-PCBs
- Fixed problems when using variants and sub-PCBs, some changes
  reverted during separation.
2022-12-26 13:04:49 -03:00
Salvador E. Tropea dad174bfd3 Added examples for Panelize and PCB_Print using sub-PCBs. 2022-12-26 11:10:24 -03:00
Salvador E. Tropea 819555e668 [Netlist] Added support for sub-PCBs 2022-12-26 11:00:06 -03:00
Salvador E. Tropea e82049cdea [iBoM] Changed to use will_filter_pcb_components 2022-12-26 10:45:54 -03:00
Salvador E. Tropea 2282334986 [GenCAD] Added support for sub-PCBs. 2022-12-26 10:38:19 -03:00
Salvador E. Tropea 4d5152032d [Copy Files] Added support for sub-PCBs 2022-12-26 09:48:17 -03:00
Salvador E. Tropea 5dacb969b1 [BoardView] Added sub-PCBs support 2022-12-26 09:33:04 -03:00
Salvador E. Tropea 71f2894ef4 [PDF/SVG PCB Print] Implemented sub-PCBs 2022-12-26 09:06:37 -03:00
Salvador E. Tropea ebabc0b37b [Windows] Fixed problems with os.rename
- Now using os.replace
- It removes the target if already there
2022-12-26 08:02:14 -03:00
Salvador E. Tropea 9ae6304cf9 [Test] Added more information about retcode missmatch 2022-12-22 13:39:40 -03:00
Salvador E. Tropea c9aab5d4cc [Any layer] Added support for sub-PCBs 2022-12-22 13:22:36 -03:00
Salvador E. Tropea d5570a1b07 [Tests] Moved battery pack variants definition to a separated file
- To use with import
2022-12-22 13:08:12 -03:00
Salvador E. Tropea 421dcf34b7 [Added] Sub-PCB support to drill outputs 2022-12-22 12:42:21 -03:00
Salvador E. Tropea 5ecbbc84fd [Tests] Added sub-PCB test for PCB Variant and PcbDraw 2022-12-22 10:15:21 -03:00
Salvador E. Tropea 3ef1e84fd5 [Tests] Added line to quickly test different SVG resolutions 2022-12-19 13:24:28 -03:00
Salvador E. Tropea da2d5f1001 [Variants] Added some limited support for `kikit separate` 2022-12-18 17:14:38 -03:00
Salvador E. Tropea fafd5d2f6d New VRML output 2022-12-17 20:55:09 -03:00
Salvador E. Tropea 6b253d3c52 [KiKit Present] Added quick start support
- Also added mechanism to embed the markdown description
- Some adjusts to the help
2022-12-06 12:58:59 -03:00
Salvador E. Tropea 0fc8a75ee0 [KiKit Present] Added external mode examples 2022-12-05 21:28:50 -03:00
Salvador E. Tropea 1e41737f01 [KiKit Present] Added some comments to the examples 2022-12-05 21:21:55 -03:00
Salvador E. Tropea 509f74fd31 [KiKit Present] Implemented various modes 2022-12-04 19:50:29 -03:00
Salvador E. Tropea 8c72fc23c9 [Navigate Results] Added support for compress output 2022-12-02 13:26:49 -03:00
Salvador E. Tropea 5de3b8cc6f [Stencil*] Added category 2022-12-02 09:34:25 -03:00
Salvador E. Tropea a9000716a7 [Stencil_For_Jig] New output
- Just the other type of stencil supported by KiKit.
2022-12-01 12:59:55 -03:00
Salvador E. Tropea 2a46ab1cff [Stencil_3D] New output
- KiKit's "stencil createprinted"
2022-12-01 11:15:12 -03:00
Salvador E. Tropea 4437222eab [Tests] Added retry for the dummy web server when the address is in use 2022-11-30 18:41:43 -03:00
Salvador E. Tropea 79b0c3f45a [Panelize] Added `source` options 2022-11-30 18:20:57 -03:00
Salvador E. Tropea 425840059c [Panelize] Added mechanism to extend defined options. 2022-11-30 17:01:40 -03:00
Salvador E. Tropea 99467d4d05 [Added] Panelize output
- First working version
2022-11-28 16:31:00 -03:00
Salvador E. Tropea 1036b26f0a [Examples] Added example used to test the 3D render populate 2022-11-27 18:51:56 -03:00
Salvador E. Tropea 52113cc394 Fixed some YAML linter warnings 2022-11-25 12:24:43 -03:00
Salvador E. Tropea 2f9d81964e Added autoscale margins example. 2022-11-25 12:21:40 -03:00
Salvador E. Tropea 14100615d4 [Tests] Removed `test_int_bom_refuse_no_sep`
- Now we consider it an error
2022-11-24 09:39:43 -03:00
Salvador E. Tropea 8028fb27e1 [Tests] Added some tolerance to the pcb_print_multizone_1 test 2022-11-23 20:07:38 -03:00
Salvador E. Tropea 0590555350 [Tests][Fixed] QR Lib test
- The transparency interferes with zbarimg
- A side effect of almost invisible text in PDF
2022-11-23 19:00:47 -03:00
Salvador E. Tropea 5e3404949d [Stack-up][Fixed] Problems when using more than one dielectric
Fixes #328
2022-11-10 18:09:00 -03:00
Salvador E. Tropea eee7b5d75b [Test][Fixed] test_diff_git_4 needs eeschema 2022-11-07 12:51:39 -03:00
Salvador E. Tropea a4e68b1c18 [KiBoM] Added support for Mouser links 2022-11-07 11:34:14 -03:00
Salvador E. Tropea be84d10968 [Tests][Fixed] Adapted link tests to new columns 2022-11-07 11:16:09 -03:00
Salvador E. Tropea dbea3ca183 [BoM][Added] Option to link to Mouser site. 2022-11-07 10:50:58 -03:00
Salvador E. Tropea 96f7b4ee5b [Tests][Fixed] Reference for test_print_pcb_refill_1 2022-11-05 15:47:35 -03:00
Salvador E. Tropea 40b2a5da68 [Tests] Removed KiCad 5.1.6 references 2022-11-05 14:45:46 -03:00
Salvador E. Tropea c3f426a1d5 [Diff][Fixed] Problems when missing file from repo
- When comparing to a repo point where the PCB/SCH didn't exist yet.
Closes #323
2022-11-05 14:37:19 -03:00
Salvador E. Tropea 06f5fc12f4 [Render_3D] Separated the crop and transparent options 2022-11-01 13:36:05 -03:00
Salvador E. Tropea e874b3af8e [Populate] Added support for `render_3d`
- So now we have a better image and no need for 2D representations
  of the 3D models
2022-11-01 12:54:09 -03:00
Salvador E. Tropea 6d3d2c37d0 [Render_3D] Added option to highlight components 2022-10-31 10:16:21 -03:00
Salvador E. Tropea 81ce2004d5 [Render_3D] Added option to auto-crop the resulting PNG 2022-10-30 14:35:18 -03:00
Salvador E. Tropea 5b19227625 [Render_3D] Added option to render only some components
- `show_components` like in PcbDraw
2022-10-30 12:36:36 -03:00
Salvador E. Tropea a128def73a [Examples] Fixed 3D models for the PcbDraw PCB example
- Various components had repeated models
- References to relative files that were obsolete
- Missing models for the U1, U2 and U3 (just sockets)
- Missing 3D model for the potentiometer
2022-10-30 12:31:38 -03:00
Salvador E. Tropea 58e3e9e847 [PcbDraw][Populate] Added filter expansion
- in `show_components` and `highlight`
2022-10-29 16:12:44 -03:00
Salvador E. Tropea 1df9d1da46 [PcbDraw][PCB_Print] Removed all PcbDraw convert.py usage
- Currently not needed
2022-10-28 13:41:33 -03:00
Salvador E. Tropea 648cd1cc8d [DOCs] Documented the `populate` mechanism 2022-10-28 08:50:46 -03:00
Salvador E. Tropea 171803ff64 [Populate] Added support to compress and Makefile generation 2022-10-28 08:29:54 -03:00
Salvador E. Tropea e56343d214 New populate output
- The PcbDraw command
2022-10-27 21:24:57 -03:00
Salvador E. Tropea 8d3696796b [Test] Adapted to the new downloader API 2022-10-24 13:19:04 -03:00
Salvador E. Tropea 491c598afb [iBoM] Added support for the `offset_back_rotation` option 2022-10-24 12:58:36 -03:00
Salvador E. Tropea bedac3f5ec [Tests] Moved the stdout/err limit to 10 MB 2022-10-19 14:08:05 -03:00
Salvador E. Tropea b25e4c2d65 [Tests] Removed stdout/stderr read limit 2022-10-19 14:01:54 -03:00
Salvador E. Tropea c79e5b0b0f [PcbDraw] Better support for variants
- All variant stuff is applied
- A new mode allows to get a more coherent behavior for the show_components
2022-10-19 10:19:00 -03:00
Salvador E. Tropea 0be6f40053 [PcbDraw] Individual margin control 2022-10-19 08:32:46 -03:00
Salvador E. Tropea 4b0965fc4d [PcbDraw] Added option to control the size detection
- Now we can use the full method found in newer versions
- But we can also use simpler methods that are usable and needs
  less dependencies (also they are faster)
2022-10-19 08:05:06 -03:00
Salvador E. Tropea 97dd675a6d [PcbDraw] A `remap_components` option with better type checks
- The old option was simpler, but you could put anything there
2022-10-18 13:37:37 -03:00
Salvador E. Tropea 087b1aabe3 [PcbDraw] Added resistor remap and flip options 2022-10-18 13:16:43 -03:00
Salvador E. Tropea f78f8b3064 [PcbDraw] Added solder paste removal 2022-10-18 11:38:29 -03:00
Salvador E. Tropea 268e1ef2f7 [PcbDraw] Added support for the outline width 2022-10-18 11:34:12 -03:00
Salvador E. Tropea 00cea42cda [PcbDraw] Added support for image margin 2022-10-18 11:27:11 -03:00
Salvador E. Tropea bb6b0c6141 [PcbDraw] Replaced `unit` code
- So we have only one units conversion
- I think the only difference is that KiBot code currently supports
  the locales decimal point
2022-10-18 09:57:56 -03:00
Salvador E. Tropea 838129e69c [PcbDraw] Embedded the PcbDraw.plot code
- Now PcbDraw is not a dependency of out_pcbdraw.py
2022-10-17 12:58:06 -03:00
Salvador E. Tropea e733ba54c4 Adapted reference files to KiCad 6.0.8 2022-10-14 10:42:09 -03:00
Salvador E. Tropea 80b034120e [Tests] Adapted KiDiff rereference for KiCad 5 2022-10-14 10:33:28 -03:00
Salvador E. Tropea 25d9806b47 [Diff] Added option to compare only the first schematic page.
- So now the default is to compare all the schematic pages.
Closes #319
2022-10-14 10:25:37 -03:00
Salvador E. Tropea a337028007 [Internal BoM] Added some basic support for "Exclude from BoM" flag
Related to #316
2022-10-11 11:46:00 -03:00
Salvador E. Tropea 1106708a6d [Fixed][Position] Wrong side classification
- When the side column wasn't the last column

Closes #313
2022-10-06 08:59:15 -03:00
Salvador E. Tropea 925d3596dd New filter `field_modify`
- Also added `pre_transform` shortcut.
2022-10-03 13:11:01 -03:00
Salvador E. Tropea a9d5b8cd58 New filter `urlify` to convert URLs in fields to HTML links
Closes #311
2022-09-30 11:28:21 -03:00
Salvador E. Tropea 1d0c2307c5 [Tests] Compare 100% height of PcbDraw images
- Also added some tollerance, with this v1.0.0 is passing the tests.
2022-09-29 10:47:06 -03:00
Salvador E. Tropea 54b7cfb2a7 [Test] More image tollerances 2022-09-23 12:50:31 -03:00
Salvador E. Tropea 20f324087f [Tests] Marked test_drc_filter_2 as slow 2022-09-23 12:33:22 -03:00
Salvador E. Tropea 51193541f0 [Test] More compare tollerances 2022-09-23 10:05:00 -03:00
Salvador E. Tropea 3f4448ffce [Tests] More image tollerance 2022-09-23 09:55:46 -03:00
Salvador E. Tropea 1b597043f5 [Tests] Added same tollerance to all diff checks 2022-09-23 09:49:53 -03:00
Salvador E. Tropea 8392f468ae [Tests] Added some tollerance to img compare for non Debian 2022-09-23 09:43:57 -03:00
Salvador E. Tropea b989d1aaa3 [Tests] Fixed condition in last patch 2022-09-23 09:39:54 -03:00
Salvador E. Tropea 80d69acaa6 [Tests] Avoid comparing the text in diffs when not Debian 2022-09-23 09:35:57 -03:00
Salvador E. Tropea 1f7cff4fe8 [Tests] Delay the get_path patch, needed by Python 3.10 2022-09-23 08:41:31 -03:00
Salvador E. Tropea aba02e083c [Tests] Look for coverage3 if python3-coverage isn't installed 2022-09-23 07:27:46 -03:00
Salvador E. Tropea 1042edbb0e [Update_XML] Correct error when using wrong value 2022-09-21 12:41:30 -03:00
Salvador E. Tropea 58b7958899 [Update_XML] Now you can check PCB and schematic parity
Related to #297
2022-09-21 11:33:26 -03:00
Salvador E. Tropea 6eaa09beea [Tests] Added test for --no-warn 2022-09-21 08:31:10 -03:00
Salvador E. Tropea 82229e126d [Copy_Files] Made 3D models use the project path as base
- To avoid problems when KiCad is running from other place
2022-09-21 08:00:58 -03:00
Salvador E. Tropea e2fdf87d6b [Copy_Files] Now you can copy the 3D models
- Also save a PCB modified to use them
- Changed the syntax so we can copy other stuff
2022-09-20 13:13:12 -03:00
Salvador E. Tropea 599ddcfc5b Added YAML example to check zones with repo 2022-09-16 10:14:53 -03:00
Salvador E. Tropea 5bb63e6624 Added YAML sample to detect zone refills 2022-09-16 10:14:11 -03:00
Salvador E. Tropea e49cbc2b93 [Global Ops] Added mechanism to give more priority to local globals.
- `imported_global_has_less_priority` in the KiBot section

Related to #291
2022-09-15 12:51:25 -03:00
Salvador E. Tropea 488f2dcbc2 [Global options] Now the global `dir` option also applies to the preflights
- Can be disabled using `use_dir_for_preflights`.

Closes #292
2022-09-15 09:33:57 -03:00
Salvador E. Tropea 76742bb69f [Fixed] Problems when aggregating a CSV without footprint
See #248
2022-09-15 06:34:17 -03:00
Salvador E. Tropea d01943ed87 Added support for 3D models aliases
- Also a global option to define them in the KiBot configuration

Related to #261
2022-09-14 09:38:47 -03:00
Salvador E. Tropea 418b74b2f3 Environment and text variables now can be used as 3D model aliases.
- Environment and text variables expansion is now recursive.
  So in `${VAR}` the *VAR* can contain `${OTHER_VAR}`

Related to #261
2022-09-14 07:30:13 -03:00
Salvador E. Tropea 23d46b9a10 [Fixed] --define wasn't allowed for --list
- So people couldn't use definitions and use --list

Fixes #288
2022-09-14 06:45:17 -03:00
Salvador E. Tropea 199bb9441f [Tests] Included missing YAML file 2022-09-13 13:55:32 -03:00
Salvador E. Tropea 08a0628eff Added some basic preprocessing
- Now you can parametrize the YAML config.

Related to #233 and #243
2022-09-13 13:31:25 -03:00
Salvador E. Tropea 5f6bfa0b62 [Tests] Adjusted the 3D render references 2022-09-13 12:45:45 -03:00
Salvador E. Tropea 4cbb7a3405 [Fixed] 2D PCB processing didn't show in 3D targets
- I.e. solder paste not removed in the 3D render.

Related to #270
2022-09-13 11:32:27 -03:00
Salvador E. Tropea 6f2c4ccf24 [Globals] Added options to control which stuff is changed on PCB variants
- cross_footprints_for_dnp
- remove_adhesive_for_dnp
- remove_solder_paste_for_dnp
- hide_excluded (default value)

Related to #270
2022-09-13 10:44:07 -03:00
Salvador E. Tropea 661677608e [Internal BoM] Added CSV aggregate
Related to #248
2022-09-13 09:25:14 -03:00
Salvador E. Tropea 1f1a56e5ac Added support for changing text variables with variants
- During outputs creation.
- Option `set_text_variables_before_output`.

Related to #233
2022-09-12 13:35:40 -03:00
Salvador E. Tropea 9a70f2e141 New output copy_files
Closes #279
2022-09-12 10:39:44 -03:00
Salvador E. Tropea 70a2788df0 [Render 3D] Added options to control render aspects
- To disable some technical layers
- To control the silkscreen clipping

Closes #282
2022-09-12 08:25:32 -03:00
Salvador E. Tropea 877695378c [Fixed][Diff] Link name for git diffs
- Also adapted file test to new name
2022-09-09 13:30:27 -03:00
Salvador E. Tropea e871efe4bd [Diff] Option to use variant's file_id for the link
- Also changed None by Current/FILE
2022-09-09 13:09:56 -03:00
Salvador E. Tropea 6cf6b08450 [SCH Variant] Added option to change the title
- Similar to PCB Variant
2022-09-09 12:51:51 -03:00
Salvador E. Tropea f615790ddc [Diff] Added schematic variants compare
Closes #278
2022-09-09 11:36:48 -03:00
Salvador E. Tropea 0a817bfc60 [Diff] Added two mechanisms to compare PCB variants in one output
- Taking pairs
- Using a reference

Related to #278
2022-09-09 10:57:36 -03:00
Salvador E. Tropea 584ef5354b [Diff] Added mechanism to compare using a variant
Related to #278
2022-09-09 09:42:06 -03:00
Salvador E. Tropea 2111eaf6d2 [PCB Variant] Options for title and conditional project copy 2022-09-09 09:08:26 -03:00
Salvador E. Tropea 4dc93da42b [PCB Variant] Implemented the 3D filtering
- The PCB filtering code was moved to make it, some errors could be
  introduced
2022-09-09 08:57:05 -03:00
Salvador E. Tropea 42aa142a56 [Report] Added support for Eurocircuits drill adjust to fix small OARs.
Closes #227
2022-09-08 11:37:58 -03:00
Salvador E. Tropea 241eca63ff [PCB Print] Added option to customize the page numbers
Related to #283
2022-09-08 07:24:56 -03:00
Salvador E. Tropea f156a23f3f [Info] Added environment vars, KiBot paths and KiAuto info. 2022-09-07 12:45:56 -03:00
Salvador E. Tropea 6354ccdd7d [Diff] More changes to the link name
- Adding the tag to branches
2022-09-07 10:52:51 -03:00
Salvador E. Tropea 3684889060 [PCB Print] Changed the conversion strategy
- Now we can control the resolution
- Added option for this

Related to #259
2022-09-07 08:40:18 -03:00
Salvador E. Tropea fe9bf9e18b [Tests][Diff] Added link check 2022-09-06 09:18:10 -03:00
Salvador E. Tropea e34d4a01e0 [Diff] Added option to force the checkouts 2022-09-05 13:48:14 -03:00
Salvador E. Tropea a4abb65ef3 [Diff] Added support for stashing submodules
Related to #265
2022-09-05 13:35:04 -03:00
Salvador E. Tropea 01536726a1 New output "Info": collects info about the environment.
Related to #209
2022-09-05 09:07:08 -03:00
Salvador E. Tropea 1ff365b572 [Tests] Moved the schematic diff to the slow tests 2022-09-02 07:48:04 -03:00
Salvador E. Tropea e9e4225b16 [Diff] Added option to copy instead of link
Closes #272
2022-09-02 07:16:16 -03:00
Salvador E. Tropea cabf14ec07 [Diff][Fixed] Always comparing the PCB
- Added regression test

Fixes #273
2022-09-02 07:03:57 -03:00
Salvador E. Tropea d8d8552883 [Diff] Now the %i is diff_pcb for the PCB and diff_sch for the sch
Related to #265
2022-09-01 14:13:28 -03:00
Salvador E. Tropea e431b42625 [Test] Added naive test for the symlink compression 2022-08-31 13:38:29 -03:00
Salvador E. Tropea 10ee73feeb [Diff] Added option to create a link to the output
- This link contains the git hashes involved in the comparison.

Related to #265
2022-08-31 08:47:15 -03:00
Salvador E. Tropea 6b344a094b [Diff][Fixed] Problems when no changes to stash
- "git stash push" always returns 0, even if nothing was stashed.
- But "git stash pop" returns 1 if nothing stashed.
- So now we check using "git stash list".

Related to #265
2022-08-31 07:50:09 -03:00
Salvador E. Tropea d0caf5b8fd [Tests] Fixed problems when a test using git failed
- We didn't restore the working dir
2022-08-25 13:38:57 -03:00
Salvador E. Tropea 5bf773a070 [Tests] Fixed problems in systems where git isn't configured 2022-08-25 13:38:23 -03:00
Salvador E. Tropea 464b72e8f1 New output to compute differences between PCBs and SCHs.
Fixes INTI-CMNB/KiAuto#14
2022-08-25 13:02:02 -03:00
Salvador E. Tropea 85538b0b27 [Global options] Restore the project at exit
Related to #250
2022-08-19 09:39:25 -03:00
Salvador E. Tropea 292105b6f8 [Tests] Added test for --dont-stop 2022-08-12 11:17:23 -03:00
Salvador E. Tropea 83c7d10ba0 [Tests] Added regression test for KiCad 6 nested zones 2022-08-12 10:44:23 -03:00
Salvador E. Tropea 13e5485fe8 [Tests] Adapted the powe annotate reference
- Now the change is propagated to the lib symbol. This is OK, KiCad
  also changes the symbol lib values, they are just defaults.
2022-08-12 09:35:04 -03:00
Salvador E. Tropea 553d47f533 [BoM] Added support for text variables expansion
- Is done using a filter, the expansion is done at the end, but
  the filter can be applied at any point in the filter/variant
  chain.
Fixes #247
2022-08-12 09:09:09 -03:00
Salvador E. Tropea 9be29307be [Tests] Modified the logs to print a command that we can copy and paste 2022-08-11 09:27:39 -03:00
Salvador E. Tropea 75afab0d40 [Test] Fixed drc filters tests cases
- Added silk_over_copper exclusion
- Skipped test_drc_filter_2 for KiCad 5 (is for KiCad 6)
2022-08-10 18:39:43 -03:00
Salvador E. Tropea c5a6d894c9 [DRC] Added Workaround for problems with DRC exclusions
- Global option: `drc_exclusions_workaround`
- KiCad bug [11562](https://gitlab.com/kicad/code/kicad/-/issues/11562)
Fixes INTI-CMNB/KiAuto#26
2022-08-10 14:01:32 -03:00
Salvador E. Tropea 528a58afe1 [Tests] Fixed missing GS.ki* in kiconf_init.py 2022-08-01 18:54:28 -03:00
Salvador E. Tropea 6c7e0cebe0 Now GS.ki5() and GS.ki6() are just GS.ki5 and GS.ki6
- The version doesn't change during execution ;-)
2022-07-31 17:45:55 -03:00
Salvador E. Tropea adcd77a821 [Experiment] Trying to figure out why KiAuto isn't using the interposer 2022-07-30 12:48:31 -03:00
Salvador E. Tropea b5fc7e8c55 [Report] Fixed converted file wasn't stored at `dir`
Closes #238
2022-07-25 11:40:24 -03:00
Salvador E. Tropea 30f708db0e [Tests] More changed related to parallel tests
- Warning 8 filtered for test_sch_missing_1
2022-07-25 11:16:49 -03:00
Salvador E. Tropea a3bf56c39a Adapted test SCH references
- Now we keep title block entries, even if they are " "
  This is how KiCad behaves
2022-07-21 13:46:27 -03:00
Salvador E. Tropea 0e7121dc3d Now configuration sections are parsed in a fixed order
- This allows a predictable behavior, the YAML is converted to a dict,
  so you can't trust in the order of the keys.
- It avoids misstakes
- Allows using %V/v in preflights, even if globals are declared latter.

Fixes #234
2022-07-21 13:11:24 -03:00
Salvador E. Tropea 061ed0488e [Tests] Separated kicad2step, pcbnew and eeschema tests 2022-07-14 19:23:28 -03:00
Salvador E. Tropea 5a8391ca59 [Tests] Migrated qr_lib_1 to pcb_print (faster) 2022-07-14 18:53:41 -03:00
Salvador E. Tropea d52fd87076 [Tests] More adjusts to allow parallel run 2022-07-14 17:47:53 -03:00
Salvador E. Tropea 97fbdef5c8 [Tests] Updated results after OAR fix. 2022-07-14 17:18:18 -03:00
Salvador E. Tropea ba7bebd980 [Position] Added an error message for wrong file names
- If a user asks for separated files and doesn't use %i to
  differentiate the names now we inform it as an error.

Related to #222
2022-07-13 11:33:43 -03:00
Salvador E. Tropea 7f29fa1ecd [Tests] Fixed test_import_7
- It used a test case that didn't really pass the DRC
2022-07-13 09:25:02 -03:00
Salvador E. Tropea a8a4c2ad9a [Tests] More adjusts to test_sch_missing_filtered filters
- Reason: Now tests are run in parallel, so we can catch a temporal
  KiCad configuration created by a parallel job.
2022-07-13 06:49:22 -03:00
Salvador E. Tropea 4765121e3f [Tests] ImageMagick available again 2022-07-13 06:32:11 -03:00
Salvador E. Tropea 4245709e3d [Tests] Adjusted the filters for test_sch_missing_filtered
- Not sure why needed, but these warnings are logic
2022-07-13 06:29:03 -03:00
Salvador E. Tropea 73c72ecb62 [Tests] Fixed test_import_8
- Removed the ligth_control project
2022-07-12 14:03:17 -03:00
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 54e14f0443 [Tests] Marked dep_convert as failing
- The AppImage is missing
2022-07-09 20:30:11 -03:00
Salvador E. Tropea 15d5f90a27 [Tests] Fixed fil_test.py assertions
- PyTest 6 failed to catch the assert, but 7 does
2022-07-09 19:44:02 -03:00
Salvador E. Tropea 9532422984 [Tests] Run slow tests separately
- Also run the faster ones in parallel
- The slowest use KiCad, not sure how safe is to run it in parallel
- Changed mechanism of coverage collection to allow parallel execution
2022-07-09 16:33:09 -03:00
Salvador E. Tropea 6ff6fcc975 [Tests] Better support when KiBot is also installed at user level 2022-07-09 16:26:46 -03:00
Salvador E. Tropea 35996e4cf5 [Test] Removed gs symlink from the artifacts
- Is generating problems on GitHub
2022-07-08 12:55:54 -03:00
Salvador E. Tropea c464ccfb95 [Test] Added test for check_tool_binary_local 2022-07-08 12:25:10 -03:00
Salvador E. Tropea 7842edafcf [Test] Added test for try_download_tool_binary 2022-07-08 12:12:36 -03:00
Salvador E. Tropea b78b943ff6 [Test] Added gs_downloader test 2022-07-08 11:57:30 -03:00
Salvador E. Tropea 6248803252 [Test] More robust dep_python test
- Ensure the test module isn't installed before testing
2022-07-08 11:51:15 -03:00
Salvador E. Tropea 120220b986 [Test] Workaround for importlib crazy behavior
- I can't call pip to install in a specified dir and then import
  using importlib. It always fail, even when the module is installed
  and its path is in sys.path. Couldn't find why.
2022-07-08 10:57:03 -03:00
Salvador E. Tropea d6aa9b2446 [Test] Added test for python_downloader 2022-07-08 10:19:34 -03:00
Salvador E. Tropea 293facda76 [Test] Enabled dep_pytool test now that we can run it on CI/CD 2022-07-08 07:52:38 -03:00
Salvador E. Tropea e72fe1d897 Added tests for various downloaders
- rsvg
- git
- convert
- Also disabled the one for pytool because it needs adjusts
  to work as root.
2022-07-07 20:09:20 -03:00
Salvador E. Tropea 069d9ba690 Added pytool_downloader test 2022-07-07 19:08:06 -03:00
Salvador E. Tropea 941185d635 Added a test for rar_downloader 2022-07-06 19:15:56 -03:00
Salvador E. Tropea 56f5176060 Fixed problems when running tests and a copy of KiBot is in ~/.local 2022-07-06 19:14:58 -03:00
Salvador E. Tropea 420757880f Adapted the tests for missing tools to the new mechanism 2022-07-05 13:49:01 -03:00
Salvador E. Tropea 0a8481dadf Now the dependencies are YAML specs in docstrings
- They document the dependencies and constructs them
2022-07-05 12:43:49 -03:00
Salvador E. Tropea c5f55d39bb Removed test_check_scripts, no longer used 2022-06-30 13:58:08 -03:00
Salvador E. Tropea e00b6b3f23 Removed unused functions
- check_script
- check_eeschema_do
- Now all the code uses dep_download stuff
2022-06-30 13:11:02 -03:00
Salvador E. Tropea 29afcdd453 Fixed problems with the test_ibom_parse_fail test
- Needs to avoid iBoM using X server
- Python 3.7 optional parameter to the mocked function wasn't implemented
2022-06-30 11:38:22 -03:00
Salvador E. Tropea 59d6d2caac [Dependencies] Added auto-download for iBoM 2022-06-30 10:03:26 -03:00
Salvador E. Tropea 6242a772c2 KiCost specs encoding fixes
- Now we decode HTML encoded sequences
- Updated KiCost submodule to the one that fixes KitSpace encoding
- Updated the references (now properly encoded)
2022-06-29 08:08:42 -03:00
Salvador E. Tropea e88e2730da Made the test for missing pcbdraw components more robust
- Avoid downloading the tool
- Avoid using a downloaded copy
2022-06-19 20:13:55 -03:00
Salvador E. Tropea 65d4143ec1 Now we try to download some tools when missing
- Currently only a few targets are available
- Rar, ImageMagick, RSVG Tools and git have some support
2022-06-19 19:17:38 -03:00
Salvador E. Tropea ff109a02ec Added test for category image in navigate results 2022-06-14 07:06:59 -03:00
Salvador E. Tropea 486fabd321 Added merge and translate field tests for KiCost 2022-06-13 11:18:33 -03:00
Salvador E. Tropea e6cfe15dd0 PDFUnite: added warnings and errors about missing input files
- Also simplified the create_pdf.py error handling.
  - We are not catching I/O errors, they are fatal and should be
    catched at a higher level.
  - We already check the input files and create the output dir.
- Added tests
2022-06-13 08:56:25 -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 72a2c71ddb Added test for PCB paper size stuff 2022-06-12 12:17:23 -03:00
Salvador E. Tropea 40a0277a5d Added missing R_0805_2012Metrico.wrl
- Also changed to links
2022-06-12 12:13:35 -03:00
Salvador E. Tropea db3bf471ea Add support for `globals` instead of `global` 2022-06-12 11:40:07 -03:00
Salvador E. Tropea 35c7286229 Added test for gloabl environment vars 2022-06-12 11:30:44 -03:00
Salvador E. Tropea e0fa00f68b Added pdfunite test with source and external tool 2022-06-12 10:27:29 -03:00
Salvador E. Tropea e6b98bd5aa More test simplifications 2022-06-10 21:09:34 -03:00
Salvador E. Tropea 78b55b916a Added missing changes to context.py 2022-06-10 20:37:17 -03:00
Salvador E. Tropea 3a5042ea96 Simplified the tests 2022-06-10 19:55:13 -03:00
Salvador E. Tropea aefe54d770 Fixed missing argument in test_date_format_2 2022-06-10 17:39:24 -03:00
Salvador E. Tropea e15f18de2c Simplified the tests initialization
- Now output dirs are named after the test function
2022-06-10 14:01:56 -03:00
Salvador E. Tropea 1b2616b19f Added simnple test for Specs (XLSX BoM) 2022-06-10 12:46:59 -03:00
Salvador E. Tropea 358b7f4e44 Added more pcb_print tests 2022-06-10 11:28:33 -03:00
Salvador E. Tropea 304428b2c4 Adapted some tests
- The title block of some test_v5 sheets was removed
- The SVG reference for test_v5 seems to be unstable
2022-06-10 10:07:45 -03:00
Salvador E. Tropea 2ccb61ee2b Added more KiCad SCH tests
- Qubic bezier
- Alternate pin
- Convert (DeMorgan)
- fields_autoplaced
- Bitmap scale
- Paper "user" & orientation
2022-06-10 09:33:15 -03:00
Salvador E. Tropea 0583befe6a Adapted tests to the new drill_marks validation
- Also removed the setter helper, no longer needed as validation is
  done by Optionable
2022-06-10 08:47:58 -03:00
Salvador E. Tropea b57a29ddee Added more pc_print test cases 2022-06-10 07:55:07 -03:00
Salvador E. Tropea d91e98a495 Added simple test for monochrome print 2022-06-09 13:53:58 -03:00
Salvador E. Tropea 9a090012a6 Added more options to test pcb_print features 2022-06-09 13:01:25 -03:00
Salvador E. Tropea 7776e4cdaf Added simple SVG print test 2022-06-09 11:42:35 -03:00
Salvador E. Tropea f1e7691a75 Added simple dependencies test 2022-06-09 10:56:36 -03:00
Salvador E. Tropea 0b8c4f1726 Added simple navigate_results test 2022-06-09 10:36:39 -03:00
Salvador E. Tropea 59718bdfdf Added missing YAML test files
- For the netlist tests
2022-06-09 06:24:49 -03:00
Salvador E. Tropea baad162199 Added simple tests for netlist output (classic and IPC) 2022-06-08 13:48:34 -03:00
Salvador E. Tropea 0227730e45 Added simple test for --quick-start 2022-06-08 13:29:37 -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 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 bb6e962f3d Internal BoM: Added customizable extra info after the title
Closes #199
2022-05-20 19:08:20 -03:00
Salvador E. Tropea 5bcedf4c7a Fixed: missing adapted test in last commit 2022-05-20 07:56:20 -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 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 54e94a5298 Adapted filter test to the new `regex` policy
- No longer an error skipping it
2022-04-28 14:32:28 -03:00
Salvador E. Tropea 477c52affe Made __main__ show the same file names of detected files
- Also adapted the tests that looks for debug data about them
2022-04-26 12:15:34 -03:00
Salvador E. Tropea d79c495e35 Added title block expansions to light_control example
- Works with iBoM 2.4.1-2
Related to #161
2022-04-23 15:29:41 -03:00
Salvador E. Tropea e54d7a6a1e Moved the text vars test to ibom_text_vars.kibot.yaml
- To avoiud testing interference
Related to #161
2022-04-23 15:28:28 -03:00
Salvador E. Tropea a5df9baf80 Also added `date` example to variables test
Related to #161
2022-04-23 14:51:32 -03:00