Commit Graph

1184 Commits

Author SHA1 Message Date
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 b0b7c6c041 [Netlist] Problems to compress
Fixes #287
2022-09-09 06:51:38 -03:00
Salvador E. Tropea 409640c681 Starting to add an output to create PCB variants
- WIP, some part is working
2022-09-08 13:54:37 -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 9fdbfa5411 Bumped version to 1.3.0 2022-09-08 09:05:59 -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 2f37a5c6b4 [3D models] Various small details about missing models
- Fail to expand a VAR is reported once. Not for every model.
- Warnings no longer printed if the model is missing but we can
  download it. It confuses people when the problem is solved.
- When we fail to expand a VAR and the result is "${VAR}..."
  we tried to make it an absolute path creating a path that was
  confusing. Now we keep the original name.
2022-09-07 14:15:31 -03:00
Salvador E. Tropea 99bfaec4dc [Tests] Make the logger tollerant to wrong init sequence 2022-09-07 14:05:02 -03:00
Salvador E. Tropea f127312b27 [Diff] Added example for quick start 2022-09-07 13:26:48 -03:00
Salvador E. Tropea 33dda2c3ac [Quick Start] Avoid starting a browser when no index is generated 2022-09-07 13:26:06 -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 ba5164ffa4 [PCB Print] Added option to move the page number to the extension
- page_number_as_extension
- Can be used to easily create custom output names

Related to #283
2022-09-07 09:46:57 -03:00
Salvador E. Tropea 9cd284a9c0 [Quick Start][PCB Print] Fixed tools check
- Changes in the toolchain
2022-09-07 09:11:27 -03:00
Salvador E. Tropea e177ed1079 [DOCs] Added note about DXF output and dimensions
Related to #284
2022-09-07 09:01:55 -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 22d618a425 [PCB Print] Added option to configure the forced edge color.
Closes #281
2022-09-06 11:06:44 -03:00
Salvador E. Tropea 43aae8b0fe [Diff] Give priority to a tag if we are exactly at the tag 2022-09-06 10:37:48 -03:00
Salvador E. Tropea 947542747f [Diff] Added some logic to support new=''
- Pretends to be HEAD
- Detects if we have a dirty state

Related to #276
2022-09-06 10:12:10 -03:00
Salvador E. Tropea f603301d59 [Diff] Changed the name of the link
- It now tries with the branch, then the tag and finally what the user
  named.

Related to #276
2022-09-06 08:56:28 -03:00
Salvador E. Tropea b704c2ab41 [DOCs] `pcb_print` added all extensions for %i reference 2022-09-06 08:54:00 -03:00
Salvador E. Tropea 460ffca49b [Diff] Better `copy_instead_of_link` description
Related to #275
2022-09-05 13:56:56 -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 11d1b7ffcb [Diff] Now the link contains the git point name and the hash
Related to #276
2022-09-05 10:58:27 -03:00
Salvador E. Tropea 40526ed012 [Fixed] Avoid reloading the project is none loaded 2022-09-05 10:30:29 -03:00
Salvador E. Tropea 795e56b6d7 [PCB_Print] Text vars generated in the same run didn't show up
Fixes #280
2022-09-05 10:05:05 -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 0631836f29 When restoring the project now we maintain the original EOLs
- Not doing it in KiAuto raised problems, so now we also do it in
  KiBot

Related to #265
2022-09-02 09:38:16 -03:00
Salvador E. Tropea 560ce80c7d [Debug] Logged executed command in a cut & paste friendly way
Closes #269
2022-09-02 08:49:39 -03:00
Salvador E. Tropea de4d6c0714 [Diff] Added error message when KIBOT_LAST doesn't point to a hash 2022-09-02 08:14:55 -03:00
Salvador E. Tropea d834ba5075 [Diff][Fixed] Problems with overwriting the symlink 2022-09-02 08:14:15 -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 2b54d8320a [Diff] Added check for the old/new files specified. 2022-09-02 07:00:01 -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 61bee6e9cc [QR_Lib][Fixed] Problems when moving the footprint to the bottom.
- The updated drawings always used the top layer

Fixes #271
2022-09-01 10:29:28 -03:00
Salvador E. Tropea 75f79b1a72 [DOCs] Added advice on how to compress links 2022-08-31 13:41:06 -03:00
Salvador E. Tropea 6393ee3319 [Diff] Made the symlink relative
- So it can be included in an archive
2022-08-31 13:37:44 -03:00
Salvador E. Tropea a0075d12c7 [Compress] Added option to store symlinks. 2022-08-31 13:36:20 -03:00
Salvador E. Tropea 651f3890d5 [Diff] Added KiAuto as dependency
Related to #265
2022-08-31 12:59:52 -03:00
Salvador E. Tropea 49d20fdeeb [Fixed][Text variables] when using an empty text
Fixes #268
2022-08-31 09:18:19 -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 1557dfea77 [Diff][Fixed] Problems with git submodules
- Now we force a submodules update during checkout

Related to #265
2022-08-31 08:10:27 -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 bc793c8637 [Fixed] Internal netlist generation when no lib
Related to #242
2022-08-29 08:37:12 -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 bc0011470b [Fixed][PCB_Print] Problems with `hide_excluded: true`
- For components not in the SCH
Fixes #258
2022-08-23 07:18:12 -03:00
Salvador E. Tropea 396d701a0d [DOCs] Added some extra clarifications about the internal BoM filters
Related to #257 and #251
2022-08-22 08:08:01 -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 0180136fd6 [DRC] Another workaround for KiCad lack of exclusions support in Python
- Saving the project can remove them, so `fill_zones` removed them

Fixes #250
2022-08-17 13:33:57 -03:00
Salvador E. Tropea 8fa4f985d3 [Dependencies] Boosted PcbDraw version to 0.9.0.3
- The upstream is currently undergoing a major rewrite and isn't
  usable. It has problems with KiCad 5 and 6.
2022-08-16 09:47:15 -03:00
Salvador E. Tropea f1c6913449 [Debug] Added KiBot version and verbose level to the logs 2022-08-16 09:24:13 -03:00
Salvador E. Tropea f0783576ec [Dependencies][Debug][Fixed] pip install error log
- Now should be able to capture the error from pip

Related to #209
2022-08-16 09:16:42 -03:00
Salvador E. Tropea 91185ca56a [Dependencies] Added more local share plug-in dirs
- Also added the current iBoM plug-in path
2022-08-12 12:59:44 -03:00
Salvador E. Tropea 699b2f4d16 [Dependencies] Switched to gs (from ghostscript)
- The short name is more common

Related to #209
2022-08-12 10:24:58 -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 fcdedad360 [SCH][KiCad 6][Fixed] Instance data partially applied
- The component instance information was applied to the component,
  but not to the "basic" fields.
2022-08-12 09:03:31 -03:00
Salvador E. Tropea 5785fd3e0f [SCH Print][Netlist][Fixed] Problems with name collisions
- When the name chosen by KiCad was an alredy existing file (from
  another output) it was removed by KiAuto. So then KiCad created
  the file, we renamed it to what the user selected and ... well,
  the original file was lost. Now KiAuto takes care of this.
Fixes #244
2022-08-11 13:31:26 -03:00
Salvador E. Tropea 99d35922c6 [DEBUG] log KiAuto commands that we can copy & paste 2022-08-11 13:26:41 -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 0c2e1b823f Fixed missing changes in out_render_3d.py 2022-08-01 18:40:00 -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 320f1a38ff [iBoM] Fixed: G/SetFPIDAsString needs KiCad 6.0.6+ 2022-07-30 11:05:43 -03:00
Salvador E. Tropea 3b6c9e7d8b [iBoM] Added support for variants that change component fields
Closes #242
2022-07-30 10:39:48 -03:00
Salvador E. Tropea 3bc4bd51c6
Merge pull request #239 from hkleen/datasheet_download_ssl_error
catch possible SSLError when downloading datasheets
2022-07-26 06:23:19 -03:00
Henning Kleen 95f3ccb773 Update user agent string to pretend being a recent version of Firefox 2022-07-26 10:27:01 +02:00
Henning Kleen 44d3eac6e2 catch possible SSLError when downloading datasheets to prevent KiBot crash. 2022-07-26 09:28:46 +02: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 674c4899f6
Merge pull request #237 from kevin-dong-nai-jia/feature/suppress-info
Suppress an excessive info message to console
2022-07-25 11:07:02 -03:00
Kevin Dong d5e5585dd6
Suppress an excessive info message to console 2022-07-25 04:08:06 +08:00
Kevin Dong c5703360d5
Added in SCH PDF Print: An all_pages option. 2022-07-22 23:48:30 +08:00
Salvador E. Tropea 95a48a8922 Added `--dont-stop` command line option
- To try to continue even on errors

Related to #209
2022-07-21 13:54:42 -03:00
Salvador E. Tropea 9d7e3b91f4 Removed debug message 2022-07-21 13:46:09 -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 b9bd5368c9 Now %V/%v can be expanded in preflights
Related to #234
2022-07-21 13:07:24 -03:00
Salvador E. Tropea 1b9c734401 [KiCad 6 SCH] Fixed problems with title block on variants
- The title block wasn't saved if the title wasn't defined.
- In the first versions of v6 it was stored empy, now skipped.
2022-07-21 12:58:46 -03:00
Salvador E. Tropea 513b6526ff [PCB Print] Fixed problems with zones on multiple layers
- Now we remove them from the layer set
Closes #226
2022-07-18 09:52:41 -03:00
Salvador E. Tropea 8a47bdee83 [Install Checker] Instruct to install pip when needed
- Python tools can't be autodownloaded without pip
2022-07-18 08:49:02 -03:00
Salvador E. Tropea 0726a3c2d5 Merge branch 'master' of https://github.com/INTI-CMNB/KiBot 2022-07-15 06:23:08 -03:00
Salvador E. Tropea 3e922b6009 [PCB_Print] Fixed problems with filtered/modified PCBs 2022-07-14 18:52:31 -03:00
Salvador E. Tropea c4b1d6b8ad [Position] Fixed problems with repeated references
- Happens when doing manual panelization

Closes #224
2022-07-14 18:11:56 -03:00
Henning Kleen b4ed680d9c fix OAR calculation for design report 2022-07-14 15:56:40 +02:00
Salvador E. Tropea 882999edf4 [DOCs] Added a note about the importance of %i
- When using position output and separate files

Related to #222
2022-07-14 08:28:31 -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 8c690bfb3f Switched to v1.2.1 to identify git code 2022-07-13 10:38:26 -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 9ce18ae39b Fixed filter and variants import 2022-07-12 11:10:35 -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 68c96385d3 [KiCad 6][Variants] Fixed problems crossing alternative drawings
- Units with DeMorgan alternative drawing got only one crossed

Related to #219
2022-07-12 07:39:15 -03:00
Salvador E. Tropea 139ee82bdc Documented the added features. 2022-07-11 12:41:23 -03:00
Henning Kleen 209248ae8d also expand environment variables in design report template path 2022-07-11 15:22:43 +02:00
Henning Kleen 7ba7794a14 Allow expansion of environment variables in paths 2022-07-11 11:22:31 +02: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 e8a20ef362 [Dependencies] Fixed repeated dependencies when plug-in dir available 2022-07-09 16:28:20 -03:00
Salvador E. Tropea 18bf8d9b78 [Dependencies] Added support for partially uninstalled modules. 2022-07-08 11:50:18 -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 98ac2f2335 [Dependencies] Forced pip -U to behave in a consistent way
- Debian patches pip/distutils in a way that "pip -U" behaves
  differently when executed by root. Instead of installing to
  site.USER_BASE it installs to /usr/local.
  So now we send -U to pip, but we also send site.USER_BASE
  using --root and --prefix
  This makes pip to install in the same way for regular users
  and root. This allows running the CI/CD tests in a consisten
  way.
2022-07-08 07:48:02 -03:00
Salvador E. Tropea 3f3f69028d Merge branch 'master' of https://github.com/INTI-CMNB/KiBot 2022-07-08 06:22:06 -03:00
Salvador E. Tropea 46bd3dde13 Fixed debug message 2022-07-07 20:08:48 -03:00
Salvador E. Tropea d8f01ca337 Better indentation for dependency debug logs 2022-07-05 13:59:04 -03:00
Salvador E. Tropea 0635a249f3 Fixed wrong extra_deb name 2022-07-05 13:48:28 -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 53088227d1 Moved comments in docstrings to comments
- To allow using the docstring of plug-ins for specs
2022-07-05 12:42:16 -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 9c6062e0c8 [Dependencies] Added support for QRCodeGen auto-download 2022-07-01 13:17:02 -03:00
Salvador E. Tropea 3e331cd7a3 [Dependencies] Added support for LXML download 2022-07-01 12:45:37 -03:00
Salvador E. Tropea 1f123d3f22 [Test] Added a message to test the missing XLSX behavior 2022-07-01 12:40:15 -03:00
Salvador E. Tropea f80480b31e [Dependencies] Added XLSXWriter auto-download 2022-07-01 11:27:44 -03:00
Salvador E. Tropea fe191ba594 [PCB_Print] Updated comments 2022-07-01 11:16:04 -03:00
Salvador E. Tropea 84f3b0ede1 Removed distutils as dependency 2022-06-30 13:59:42 -03:00
Salvador E. Tropea 5b732867f5 Removed distutils use in mcpyrate 2022-06-30 13:58:54 -03:00
Salvador E. Tropea 8df074df76 Removed the use of distutils.StrictVersion 2022-06-30 13:57:20 -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 33b2367a54 [Dependencies] Added support to *_sch_print 2022-06-30 11:16:53 -03:00
Salvador E. Tropea 200b54aaf7 Fixed problems with iBoM version detection
- Now we avoid the wxWidgets initialization
2022-06-30 11:04:01 -03:00
Salvador E. Tropea 59d6d2caac [Dependencies] Added auto-download for iBoM 2022-06-30 10:03:26 -03:00
Salvador E. Tropea 166e927ca4 [Dependencies] Added missing pcb_print use of KiAuto 2022-06-30 09:30:27 -03:00
Salvador E. Tropea 3db94210cc [DOCs][Dependencies] Removed extra spaces 2022-06-30 08:14:21 -03:00
Salvador E. Tropea 482efbd81b [DOCs][Dependencies] Fixed missing space for PyPi logo 2022-06-30 08:07:42 -03:00
Salvador E. Tropea 758e43fbd5 [DOCs][Dependencies] Added links to tools, PyPi and Python logos
- So they don't point to the image but something useful
2022-06-30 08:05:26 -03:00
Salvador E. Tropea 6cc1feeae5 [DOCs][Dependencies] Added auto-download image 2022-06-30 07:56:20 -03:00
Salvador E. Tropea d15e20d8b9 [DOCs][Dependencies] Added Python module and tool images 2022-06-30 07:40:27 -03:00
Salvador E. Tropea ee9177c40b [Dependencies] Better text output 2022-06-30 07:13:18 -03:00
Salvador E. Tropea b1726e0915 [DOCs][Dependencies] Added PyPi logo 2022-06-30 07:07:11 -03:00
Salvador E. Tropea 0113c74f7a [DOCs][Dependencies] Added Debian logo 2022-06-30 06:49:29 -03:00
Salvador E. Tropea 48e5323be0 Added auto-download support for KiAuto. 2022-06-29 13:47:50 -03:00
Salvador E. Tropea 35e12bb3fc Added auto-download support for KiCost. 2022-06-29 11:35:52 -03:00
Salvador E. Tropea be5c2ff29e [Dep downloader] Added support for symlinks in tarballs 2022-06-29 11:33:36 -03:00
Salvador E. Tropea c97705da03 Added auto-download for KiBoM 2022-06-29 10:29:37 -03:00
Salvador E. Tropea c453fff8af [DOCs] Added which tools are downloaded automagically 2022-06-29 10:13:43 -03:00
Salvador E. Tropea 8dceb9a322 [PCB_Print] Added better rsvg_convert dependency
- We need 2.40+ for EPS, other versions are OK for the rest
2022-06-29 08:38:45 -03:00
Salvador E. Tropea 90eb8ac099 Added more descriptive message when a tool version isn't good
- Now we say "upgrade" instead of "install"
- We also show the needed version
2022-06-29 08:35:43 -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 6a1372c574 Added support for dependency download to pcbdraw 2022-06-28 13:19:06 -03:00
Salvador E. Tropea 3440198cd7 Enhancements to the dependency downloader
- Added Python tools downloader
- Added progress bar when downloading a tool
- Updated ImageMagick message when no fuse
2022-06-28 13:17:54 -03:00
Salvador E. Tropea e744d806b5 Added missing default categories for iBoM 2022-06-28 11:30:27 -03:00
Salvador E. Tropea 05f066fcb4 Added reason why a tools is needed to check_tool 2022-06-21 10:44:24 -03:00
Salvador E. Tropea ce9dd92d28 Moved the system and platform detection out of downloaders 2022-06-19 19:52:29 -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 d2c607755f Added log.debugl(LEVEL, msg) function, using verbose level
- Not using logging values
2022-06-18 16:35:31 -03:00
Salvador E. Tropea f31c62fbab More KiCad environment vars adjusts
- KiCad 5 values promoted to KiCad 6 versions when using KiCad 6
2022-06-17 11:33:52 -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 9db0615382 Fixed check for imageable 2022-06-14 14:30:55 -03:00
Salvador E. Tropea 6a8fe5010c Fixed warning messages in navigate_results 2022-06-14 13:11:29 -03:00
Salvador E. Tropea 5beabb129b Avoid generating a simple icon for a category when a tool is missing 2022-06-14 10:49:40 -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 6941202d2a Added a list of valid columns when a wrong column is specified
- Inspired on rdeterre/kiplot@6a9d8e3
2022-06-13 07:01:05 -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 db3bf471ea Add support for `globals` instead of `global` 2022-06-12 11:40:07 -03:00
Salvador E. Tropea 3eaf9c025e Added option to export old variables
- When using the global/environment
2022-06-12 11:29:34 -03:00
Salvador E. Tropea 25a204da3f Import plugins sorted
- More reproducible
- Should help to avoid random changes in kibot-check
2022-06-11 09:29:18 -03:00
Salvador E. Tropea 68456a0032 Avoid showing notes when not listing output details 2022-06-11 09:28:39 -03:00
Salvador E. Tropea a7a50dcf6d Simplified the drill_marks stuff
- Setter/getter are no longer needed
2022-06-10 17:50:11 -03:00
Salvador E. Tropea 3d520c9830 KiCad v6 SCH: Fixed the gr_curve support
- Is wrongly documented
- Not used by the available symbols
- Not implemented in the GUI
- You can manually use it
2022-06-10 09:31:44 -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 2ec1d9da1b Fixed: missing DRILL_MARKS adaptation in out_pcb_print 2022-06-10 08:15:57 -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 ef98248b32 Centralized all drill_marks stuff
- Now we reuse code from drill_marks.py
- Added the options validation
- Updated the help
2022-06-10 07:39:27 -03:00
Salvador E. Tropea 66c9e21865 Fixed problems with 4872a6d
- Even when most tools takes utf8 == utf-8 the XML class don't
2022-06-09 13:58:29 -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 a4e097d595 Added a warning about useless scale when printing using the frame 2022-06-09 11:41:29 -03:00
Salvador E. Tropea fb6e2ff2de Fixed problems when generating navigate_results before outputs 2022-06-09 10:35:42 -03:00
Salvador E. Tropea d9f866cbe3 Fixed problems with PyYaml 3.13 2022-06-08 14:04:34 -03:00
Salvador E. Tropea 036c8d682e Fixed missing test in last patch
- Check for wrong output name
2022-06-08 12:57:28 -03:00
Salvador E. Tropea 3d95ba958c Fixed problems with compress output and unconfigured sources 2022-06-08 12:36:39 -03:00
Salvador E. Tropea c7a340f687 Added compress output to the navigate_results 2022-06-08 11:29:49 -03:00
Salvador E. Tropea f228fc1710 Marked qr_lib options as basic 2022-06-08 10:01:29 -03:00
Salvador E. Tropea 7938c35d37 Removed debug message 2022-06-08 10:01:01 -03:00
Salvador E. Tropea 29f845d886 Fixed the code that moves the basic indicator 2022-06-08 08:53:03 -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 a750bb302c Fixed problems expanding multiple KiCad variables in the same value. 2022-06-07 10:36:31 -03:00
Salvador E. Tropea 9b69483f3f Added support for KiAuto 1.6.13 OpenGL render end detect 2022-06-06 13:39:41 -03:00
Salvador E. Tropea 156cd22fff Fixed the categories caption text 2022-06-06 13:16:49 -03:00
Salvador E. Tropea c8f4df5aa7 Added configurable categories
- Also allow to mix categories and outputs on the same page
2022-06-06 13:01:17 -03:00
Salvador E. Tropea 35247dfa72 navigate_results: Now categories can be represented by output previews 2022-06-01 13:36:59 -03:00
Salvador E. Tropea ae5dea0762 navigate_results: Added outputs preview instead of just icons 2022-06-01 12:56:37 -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 24d81f4756 Allow using KiCad 5 legacy env names even on KiCad 6
Related to #205
2022-06-01 09:14:23 -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 1663412698 navigate_results: generate PNGs for icons
- Faster load
- Smaller size
- But takes more time to generate
2022-05-29 16:37:15 -03:00
Salvador E. Tropea f589ee5cd9 Modified the icons to work without the Noto font
- Also saved them as plane SVG
- Kept an editable copy
- Fixed small detail
2022-05-29 16:31:29 -03:00
Salvador E. Tropea 6611925c17 navigate_results: centered when only 1 result 2022-05-29 15:05:49 -03:00
Salvador E. Tropea 1b318f0da4 navigate_results: made generated HTML compliant
- Added some missing alt attributes
- Added DOCTYPE
- Added language
- Added title
- Made tables regular (all same amount of td)
2022-05-29 13:41:53 -03:00
Salvador E. Tropea 8c8f9a7a4b navigate_results: added the KiBot version used to generate the pages 2022-05-29 13:00:27 -03:00
Salvador E. Tropea 4008cf68b1 navigate_results: added icon to the pages 2022-05-29 12:51:55 -03:00
Salvador E. Tropea bf4ad7f3b9 navigate_results: moved the style to a separated file 2022-05-29 11:32:24 -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 79a8b53f4e More fixes to 9b6b336 patch
- Last commit was bogus
2022-05-26 11:40:42 -03:00
Salvador E. Tropea 9d9ce72d8d More fixes to 9b6b336 patch
- Missing test in out_ibom.py
2022-05-26 11:16:22 -03:00
Salvador E. Tropea b44fe7e3bb Fixed problem intriduced by 9b6b336847
- The python3 stuff was applied too widely
2022-05-26 10:28:54 -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 0a3dff85f2 Added support for iBoM installed as plugin
- Not yet functional, we are working on iBoM layout
See: openscopeproject/InteractiveHtmlBom#301
2022-05-26 09:34:44 -03:00
Salvador E. Tropea 8ae9dff143 Bumped version to 1.1.0 2022-05-24 09:03:36 -03:00
Salvador E. Tropea 6eea54c7c9 Fixed XLSX problem when no PCB info and no stats used 2022-05-20 19:43:51 -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 ca861fc21e Added dependency collection mechanism
- Currently used to better document the dependencies
2022-05-19 08:47:06 -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 776595636b Bumped version to 1.0.0. 2022-05-10 10:47:32 -03:00
Salvador E. Tropea 7058b1fed0 Fixed missing decode in iBoM fail test 2022-05-09 09:07:13 -03:00
Salvador E. Tropea 5f22d5a3a9 Now --quick-start is more robuts
- sys.exit() is skipped
- Passed dont_stop to the run stage (was only in config)
2022-05-06 13:03:38 -03:00
Salvador E. Tropea 156c98b3b2 Modified minimal PcbDraw version
- Ask for one that supports KiCad 6
2022-05-06 13:02:05 -03:00
Salvador E. Tropea 8a3f808117 Added error message about outdated iBoM 2022-05-06 13:01:18 -03:00
Salvador E. Tropea 7c7f1eeb79 Adapted to the new KiCost API
- Now we get functions only from the top-level of the module
2022-05-05 13:55:28 -03:00
Salvador E. Tropea 058d79e4f8 Adapted to KiCost API changes 2022-05-05 10:26:42 -03:00
Salvador E. Tropea 08b1b8bdfe Added download timeout to datasheet download
- Looks like TME detects scripts and does something that makes requests
  code to hang.
2022-05-01 11:27:00 -03:00
Salvador E. Tropea ef7c9916ed Updated docs 2022-04-29 09:06:24 -03:00
Salvador E. Tropea 5504ee228d Added --type option to --quick-start to select outputs
- Useful to debug a particular output
2022-04-29 09:02:52 -03:00
Salvador E. Tropea 74d77f037c Added 'qr_lib' to --quick_start 2022-04-29 09:00:47 -03:00
Salvador E. Tropea f3f7517a7f Fixed QR_lib output when no corresponding pre-flight is used 2022-04-29 08:56:26 -03:00
Salvador E. Tropea 5b637d265e Finished the core functionality of --quick-start
- New --quick-start options:
  - --start starting point for the search
  - -d output directory for the targets
  - --dry only configs, no targets
- Added some warning filters
- Sorted scan and generation
2022-04-28 14:50:58 -03:00
Salvador E. Tropea 01c015eb27 Simplified the global vars handling
- The main class also applies the command line options
- Is more clear how defaults are handled
- Also added global config for the 3D field name
2022-04-28 14:49:28 -03:00
Salvador E. Tropea 7ddb9f5892 Modified the log system to allow parallel file logging
- During quick start targets generation we log with full verbosity
  to a file and with the selected verbosity to the console.
2022-04-28 14:43:08 -03:00
Salvador E. Tropea 494c9126f7 Fixed used layers detection in --quick-start
- We must reset some Layer members before doing a new detect
2022-04-28 14:26:02 -03:00
Salvador E. Tropea 3a3562e54e Removed the need to import kiplot in config_reader
- Avoids dependency loops
2022-04-28 14:19:53 -03:00
Salvador E. Tropea 5881f2b6c4 Fixed `gerber` example generation when no SCH
- We must skip anything using variants
- We must fix the compress sources
2022-04-28 14:08:25 -03:00
Salvador E. Tropea ae380726b2 Fixed problems in reports when no vias 2022-04-28 14:07:28 -03:00
Salvador E. Tropea 81aebbb50a Allow to skip the `regex` value in filters 2022-04-28 14:06:46 -03:00
Salvador E. Tropea 11dd1b16bf Now --quick-start is recursive
- Fixed some obvious details about cross pcb/sch generation
- Improved .kicad_sch guess when more than one and no project
2022-04-26 16:23:20 -03:00
Salvador E. Tropea 50ebaf0a15 Fixed the way xlsx_writer process the field joins
- It relied on a bug
2022-04-26 12:17:26 -03:00
Salvador E. Tropea bee8dab0ca Added yaml module not installed message in kiplot.py 2022-04-26 12:16:47 -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 e1586484f5 Fixed KiCad 5 doesn't have LSET.Contains() 2022-04-26 12:14:24 -03:00
Salvador E. Tropea 9b18c5300a Fixed KiCad 5 uses ZONE_CONTAINERS and not ZONES
Note: The previous commit included fixes for out_report
- Zones unfilled after output generation
- Pads unconditionally gained rpinted copper layers
2022-04-26 10:21:14 -03:00
Salvador E. Tropea 56030c5dc9 Added the first stepof the new `--quick-start` option
- Should be a way to quickly start using KiBot without any config
2022-04-26 09:51:14 -03:00
Salvador E. Tropea 43c5f4f12e Added support for User.* layers in lists of layers 2022-04-26 09:38:51 -03:00
Salvador E. Tropea 25c4489104 `compress.move_files` now removes dirs from outputs 2022-04-26 09:35:10 -03:00
Salvador E. Tropea 3952d84a6a Fixed internal BoM XLSX generation when no DNF parts are used 2022-04-26 09:33:04 -03:00
Salvador E. Tropea 9bc172861d Some details on `report` output
- New template `full_svg` to be used with the SVGs
- `pcb_print` SVGs now include the `sheet` value in the figure
  description.
- Added _ASCII to filter >= Unicode in `simple` template.
2022-04-26 09:26:44 -03:00
Salvador E. Tropea f4638fdc66 Added background image to pcb_print
- Enables the use of watermarks
2022-04-23 08:48:32 -03:00
Salvador E. Tropea 0554742e86 Moved the KiCad 5 SVG scale constant to misc.py 2022-04-23 07:54:13 -03:00
Salvador E. Tropea 857b8b974e Added pcb_print options to control the background 2022-04-23 07:46:04 -03:00
Salvador E. Tropea caad4e346e `pcb_print` added KiCad 5 adjust for solder mask coordinates
- Also removed unused code
2022-04-22 15:05:57 -03:00
Salvador E. Tropea bca090b685 Added `realistic_solder_mask` to `pcb_print`
- Prints the solder mask in a human understandable way
2022-04-22 14:05:41 -03:00
Salvador E. Tropea e668d7f16e `pcb_print` removed debug print 2022-04-22 09:08:22 -03:00
Salvador E. Tropea 153a1a8072 `pcb_print` fixed problems when not plotting the frame 2022-04-22 09:07:36 -03:00
Salvador E. Tropea 48070c2e5a Made the 3D models selection more robuts
- Now we reject "slots" that aren't numbers
- Now we tollerate "empty slots"
2022-04-21 16:13:59 -03:00
Salvador E. Tropea 58dc329b31 Added a report option to indicate our Eurocircuits target
- If not met we show a warning explaining the violation

Related to #164
2022-04-21 15:59:46 -03:00
Salvador E. Tropea 7ac654523d Added support for KiCad 6 pin alternates
- Another undocumented feature

Fixes #193
2022-04-21 15:09:33 -03:00
Salvador E. Tropea 10b67f4824 Fixed problems with compress.move_files
- When trying to remove directories

Fixes #192
2022-04-21 14:21:00 -03:00
Salvador E. Tropea ac391182a8 Fixed KiBoM mounting hole regex
Related to SchrodingersGat/KiBoM#169
2022-04-21 11:09:35 -03:00
Salvador E. Tropea 9f037e569f Added global option `drill_size_increment`
- Now we can round the drill sizes
- Added a context for drill tools (adjusted and rounded)
- Added a context for oval holes

Related to #164
2022-04-21 10:30:24 -03:00
Salvador E. Tropea fee5bce881 Added warnings for ridiculous OAR values on pads
Related to #164
2022-04-20 20:38:14 -03:00
Salvador E. Tropea 372a387b00 Fixed the OAR computation in reports
- Must use the real drill size.

Related to #164
2022-04-20 20:06:29 -03:00
Salvador E. Tropea ebf529fa0b Made the 3D model selection more versatile
- Now you can choose between using the variant name or the variant
  specific mechanism.
- Works for all variants and both mechanism are simple.
2022-04-20 19:42:51 -03:00
Salvador E. Tropea de469577d1 Removed value argument in internal KiBoM variant code
- This is handled by a filter
2022-04-20 19:05:06 -03:00
Salvador E. Tropea 0fce90b8d2 Fixed typo in out_report 2022-04-20 18:58:12 -03:00
Salvador E. Tropea c17683317c Fixed typos in out_report
Related to #164
2022-04-20 13:49:48 -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 ff41012e84 Changes in how we compute the drill sizes in the report
- New global variable `extra_pth_drill` defines how much the drill will
  be enlarged for plated holes.
- Removed all *_1* report values.
- Added *_real* report values. They are the asjusted drill values.
- Now we compute Eurocircuits Drill Class using all the real drill
  sizes.
- Documented all global variables/options.
- Added command line option to list all global options.
- Adjusted the report templates and thei references.

Related to #164
2022-04-20 12:57:52 -03:00
Salvador E. Tropea e00841c921 Added two special syntaxis to the 3D model variants
- %_kicost.TEXT:SLOTS% matches using the KiCost variant regex
- %_default_:SLOTS% matches if no other text matched

Related to #191
2022-04-20 10:39:19 -03:00
Salvador E. Tropea 96201e7f03 Avoid retrying when KiAuto reports a KiCad crash
- It will be implemented in KiAuto 1.6.11
2022-04-20 10:38:19 -03:00
Salvador E. Tropea bf73c11821 Fixed problems when using %VARIANT:% in the 3D models variants
Fixes #191
2022-04-19 18:44:52 -03:00
Salvador E. Tropea 5c9dbc4072 Varius `pcb_print` details
- Added option `force_edge_cuts` so we get them on all pages.
- Now `layers` can be a list of strings, or just an string.
- Added default scaling for all pages.
- Fixed: tracks removed after plotting another Cu layer.
- Fixed: custom pads plotted as special vias.
- Fixed: frame reference plotted mirrored on mirrored pages.
2022-04-18 19:08:12 -03:00
Salvador E. Tropea 80e963c90e Changed Digi-Key server from Portugal to US 2022-04-18 13:50:30 -03:00
Salvador E. Tropea 9e9a53a664 Merge branch 'master' of https://github.com/ct2irw/KiBot into ct2irw-master 2022-04-18 13:49:56 -03:00
Salvador E. Tropea 36987cfcec Fixed kicad2step not loading 3D models (bizarre case)
- If we saved the PCB to /tmp and then we reverted the changes to
  use the PCB the KIPRJMOD environment var pointed to the temporal.
- KiCad defines it during Save and Python becomes unsync, so we
  can't even notice it!

Fixes #186
2022-04-18 13:18:32 -03:00
Salvador E. Tropea e701e69a53 Added workaround mechanism for KiCad 5 fill polygon (pcb_print) 2022-04-18 12:04:49 -03:00
Salvador E. Tropea b0edede58e Added support for `monochrome` `pcb_print` for wks images 2022-04-18 09:24:08 -03:00
Salvador E. Tropea 9207140c6d Added support for undocumented "convert" schematic option
- KiCad 6
- Used for DeMorgan convert
Fixes #188
2022-04-17 09:50:43 -03:00
Salvador E. Tropea f2f54d21a8 Made more clear when the plotter can plot the fram ref 2022-04-16 19:48:45 -03:00
Salvador E. Tropea cdb6d393ac Added more recommendations to use `pcb_print`
- Can replace: pdf, ps, svg, pdf_pcb_print and svg_pcb_print
2022-04-16 19:35:35 -03:00
Salvador E. Tropea 0223cd9f85 Made more clear the pcb_print attributions 2022-04-16 19:32:05 -03:00
Salvador E. Tropea 1f01c147d8 Catched WksError and SchError during WKS load.
- Now informed with more detail
2022-04-16 19:26:03 -03:00
Salvador E. Tropea df4e60136e Modified pdf_unite to use PyPDF2 by default
- The user can still choose to use pdfunite from poppler-utils
2022-04-16 18:46:39 -03:00
Salvador E. Tropea 7ecb3f1914 Added KiCad 5 support to the worksheet code
- Filled polygons aren't working
- Added rectangle workaround (not working)
2022-04-16 16:44:52 -03:00
Salvador E. Tropea eb1a57a10d Added an option to select the kicad_wks for pcb_print 2022-04-16 15:20:02 -03:00
Salvador E. Tropea cffd3d0b89 Worksheet: moved the draw code to each class 2022-04-16 15:09:37 -03:00
Salvador E. Tropea 4b341a7a92 Added internal plot of the worksheet to pcb_print
- Also renamed some options to make it simpler (sorry)
2022-04-16 15:09:19 -03:00
Salvador E. Tropea 9c2f8ccd58 Added an option to keep temporals to pcb_print 2022-04-14 11:18:20 -03:00
Salvador E. Tropea daa19810d4 Separated the pcb_print page temporal files (for debug) 2022-04-14 11:12:22 -03:00
Salvador E. Tropea 8c1d6e53c2 Now an output can extend another output that extends ...
- Even when the other outputs aren't yet configured
- Also added an error when the types doesn't match

Closes #184
2022-04-14 10:38:07 -03:00
Salvador E. Tropea 0e8e697d19 Fixed title not restored in print functions
Fixes #185
2022-04-14 09:59:25 -03:00
Salvador E. Tropea f7be522087 Fixed pad sizes destroyed by pcb_print
- KiCad PAD.GetSize returns a reference to the pad size, not a copy
  of the current size!
2022-04-14 09:04:59 -03:00
Salvador E. Tropea 9d606fa53b Added colored pads and vias to pcb_print
- The vias are more "realistic", we avoid showing holes on layers that
  aren't drilled, but we mark the via. So you know were is.
2022-04-13 13:51:03 -03:00
Salvador E. Tropea d84dec153d Removed the moveto used in the SVG merge
- Not really needed for KiCad files
2022-04-12 15:57:28 -03:00
Salvador E. Tropea 460ddc6a59 Added holes color configuration to pcb_print 2022-04-12 15:53:34 -03:00
Salvador E. Tropea b7b9b70ac3 Added PNG, EPS and PS outputs to pcb_print. 2022-04-12 15:43:53 -03:00
Salvador E. Tropea a2526bf5bd Fixed the pcb_print get_targets for SVGs (pages, not single) 2022-04-12 14:23:24 -03:00
Salvador E. Tropea 9a90b522c5 Fixed the name of the layer used to print KiCad 6 frame 2022-04-12 09:00:06 -03:00
Salvador E. Tropea 1507300fe4 Added option to generate a better frame on pcb_print (KiCad 6)
- Also documented more details about pcb_print.
2022-04-11 19:02:26 -03:00
Salvador E. Tropea 267a38c32f Documented the %X substitutions for SVG output in pcb_print 2022-04-11 17:37:03 -03:00
Salvador E. Tropea 4e659c3ddd Added support for SVG to `pcb_print`
- And now is much faster because all the processing is done using
  SVGs and we generate PDFs only during the last step.
2022-04-11 17:24:39 -03:00
Salvador E. Tropea 09cfa14896 Fixed problems when the project specified an empty wks (KiCad 5) 2022-04-11 14:50:17 -03:00
Salvador E. Tropea 510279a0a3 Added support for frame to `pcb_print` on KiCad 5
- This is tricky because plot API doesn't support it.
  So we use `pcbnew_do` to generate an SVG and then we make a
  vectorized PDF from it.
2022-04-11 12:40:39 -03:00
Salvador E. Tropea a5c848c752 Added a color cache 2022-04-10 15:32:42 -03:00
Salvador E. Tropea bfdc024a33 Added an option to sort the layer as KiCad to pcb_print 2022-04-10 15:26:35 -03:00
Salvador E. Tropea ea1460e6b9 Added black drill holes to the `pcb_print` output
- Disabled the frame ref for KiCad 5. Doesn't work.
- Changed reports to use these PDFs. They are vector graphics.
2022-04-08 19:33:21 -03:00
Salvador E. Tropea 3752bcb53e Finished adding all the plot options to `pcb_print`
- Now is you can get most of the good things from both: print and plot
  in the same output.
- Is usually much faster than `pdf_pcb_print`
2022-04-08 15:01:10 -03:00
diogocondeco 827a7afe44 Fixes Digikey link to open part from xlsx file
Fixes the url to open Digikey's page with details from the cell part number.
2022-04-07 23:58:23 +01:00
Salvador E. Tropea 12cce8562c Added video recording to step output (KiCad 6)
Related to #176
2022-04-07 18:56:01 -03:00
Salvador E. Tropea b48a9e5ab0 Fixed (KiCad 6) traces not visible in 3D render
Fixes #177
2022-04-07 15:44:22 -03:00
Salvador E. Tropea 73b4196e46 Fixed problems with imported sub-sheets
- We must avoid processing the sheet and symbol instances of them
Fixes #178
2022-04-07 13:23:25 -03:00
Salvador E. Tropea b88f66ba21 Fixed missing imports in PyPDF2
- Removed by autoflake8 pre-commit plugin
- Now PyPDF2 is excluded, but a pre-commit run did it
2022-04-07 13:06:11 -03:00
Salvador E. Tropea 900be375e9 Added a first approach to Board2Pdf support. 2022-04-05 16:36:02 -03:00
Salvador E. Tropea 235031b12c Fixed missing increment in KiCad 5 wks copy 2022-04-04 18:35:14 -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 bb0f86ae61 Fixed KiCad 6 text variables not expanded in `render_3d` output
- We must copy the project file to the temporal dir
Fixes #173
2022-04-02 12:14:56 -03:00
Salvador E. Tropea dad1f91439 Added: text vars expansion for 3D model paths
Closes #172
2022-03-31 14:58:39 -03:00
Salvador E. Tropea 1a73dd5e29 Fixed missing Set_Text_Variables valid keys 2022-03-31 14:50:25 -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 b58430a8ea Added support for 3D View rotations (KiCad 6 only) 2022-03-29 15:49:33 -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 637a6917c0 Fixed KiCad 6 problems with empty title block items
- The saved SCH wasn't usable if company, rev, title, etc.
  were absent in the original file.
2022-03-26 12:33:08 -03:00
Salvador E. Tropea b4ff830c7d Fixed drill problems with regular vias 2022-03-25 08:39:58 -03:00
Salvador E. Tropea 5940e7bcd6 Fixed missing BoardViewOptions.get_targets
Fixes #167
2022-03-24 14:05:48 -03:00
Salvador E. Tropea 7e2e844a4b Added a preflight option to save the PCB with refilled zones.
Closes #165
2022-03-24 13:30:18 -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 beee95ce31 Merged the kicost_dk branch:
- New internal BoM XLSX options to control KiCost:
  - Dis/Enable APIs
  - Add a description column
  - Specs worksheet generation
  - Which spec columns
  - Specify a KiCost config file
- Passed debug level to KiCost
- Added support for KiCost log style to our logger
2022-03-24 09:47:47 -03:00
Salvador E. Tropea afc499e055 Added support for Pandoc 2.2.1
- Used on Debian 10.x
- Doesn't support "--to pdf", but can generate PDFs ...
2022-03-17 14:42:51 -03:00
Salvador E. Tropea d4945e0189 Added workaround for KiCad 5 SVG print
- The KiCad 6 bug was also in KiCad 5.
2022-03-17 14:39:18 -03:00
Salvador E. Tropea 6b6d22afa8 Added report conversion using pandoc 2022-03-17 12:13:51 -03:00
Salvador E. Tropea 17df40319c When meassuring the PCB size now we also look in footprints
- They can contain PCB edges
Related to #164
2022-03-17 10:59:47 -03:00
Salvador E. Tropea 45e670c11f More early text var expansions
Fixes #163
2022-03-15 20:26:18 -03:00
Salvador E. Tropea fb7e81fb69 Made the "Using `{}` for {} instead" message more clear
- When normalize_values is false it adds ", only for sorting purposes"
Related to #108
2022-03-15 19:17:25 -03:00
Salvador E. Tropea fc28b6a257 Fixed: expanded text variables earlier for date
- Avoids reformatting problems
- Also done for title, because we keep a copy of the original
Related to #161
2022-03-15 17:47:33 -03:00
Salvador E. Tropea 02a942c37b Fixed schematic comments expansion 2022-03-13 16:36:54 -03:00
Salvador E. Tropea 4359a538cd Fixed missing check for no project file 2022-03-13 16:36:15 -03:00
Salvador E. Tropea 0413699607 Fixed pcb title block load (text var expansions) 2022-03-13 15:58:47 -03:00
Salvador E. Tropea 342fb40c59 Added text variable replace in the title block items
- There are some limitations inm the depth of vars + %X usage
Closes #162
2022-03-13 15:18:44 -03:00
Salvador E. Tropea 82aac838d5 Catched error of using set_text_variables with KiCad 5 2022-03-12 19:10:35 -03:00
Salvador E. Tropea 2d86f9516d Added %X expansion to the set_text_variables 2022-03-12 18:56:15 -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 780fc25b26 Enabled render_3d output for KiCad 6 now KiCad bug is fixed. 2022-03-08 12:06:49 -03:00
Salvador E. Tropea 0c0c6ffd62 New output to join PDFs.
Closes #156
2022-03-03 16:13:00 -03:00
Salvador E. Tropea aeaabaf062 Added report contexts to expand individual layers 2022-03-03 14:27:06 -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 49962cafb8 Added some basic layer and schematic inclusion in reports.
- Related to #93
2022-03-02 18:17:42 -03:00
Salvador E. Tropea 08eb048f8d Removed unused imports 2022-03-02 18:08:48 -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 36581d8608 Added support for mirror and fields_autoplaced (KiCad v6 schematic)
- Not documented
Fixes #155
2022-02-24 13:51:11 -03:00
Salvador E. Tropea 1a5e562d14 Updated copyright year 2022-02-24 12:59:44 -03:00
Salvador E. Tropea 3237b7fb7f Added more debug information to fil_var_rename_kicost.py 2022-02-24 12:59:07 -03:00
Salvador E. Tropea 26a6db4e65 Fixed KiCad 6 schematic component instance not updated
Fixes #157
2022-02-24 12:54:39 -03:00
Salvador E. Tropea 1dbaf67cea Fixed KiCad v6 field rename
- The code created v5 fields

Fixes #158
2022-02-24 12:16:35 -03:00
Salvador E. Tropea 3f7b4dc4c8 Fixed nightly setup.
- GS imported pcbnew before __main__ configured the paths.
- As a result we always loaded the regular KiCad.
2022-02-24 10:57:52 -03:00
Salvador E. Tropea 7c4341a86a Removed debug file (out_gerber.py.debug) 2022-02-21 12:11:51 -03:00
Salvador E. Tropea 17911fe136 Allow strings in globals.copper_thickness 2022-02-21 09:38:11 -03:00