Commit Graph

1184 Commits

Author SHA1 Message Date
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
Salvador E. Tropea d9d80e5710 Fixed the C402 fix 2022-02-17 19:54:44 -03:00
Salvador E. Tropea 338a0cc3d4 Fixed B007 Loop control variable 'i' not used within the loop body. 2022-02-17 19:10:47 -03:00
Salvador E. Tropea 0ab3fb410c Fixed(?) YTT204 `sys.version_info.minor` compared to integer 2022-02-17 18:54:43 -03:00
Salvador E. Tropea 1731e889b1 Fixed D301 Use r""" if any backslashes in a docstring 2022-02-17 18:48:50 -03:00
Salvador E. Tropea c3b229ba0c Fixed D300 Use """triple double quotes""" 2022-02-17 18:47:27 -03:00
Salvador E. Tropea d7e0cc2936 Fixed last patch 2022-02-17 18:44:34 -03:00
Salvador E. Tropea f26ab6ede8 Fixed B006 Do not use mutable data structures for argument defaults. 2022-02-17 16:45:10 -03:00
Salvador E. Tropea 15b2075c96 Fixed B011 Do not call assert False 2022-02-17 16:37:01 -03:00
Salvador E. Tropea c8d131fe11 Fixed C416 Unnecessary list comprehension - rewrite using list(). 2022-02-17 16:32:16 -03:00
Salvador E. Tropea f0c581d144 Fixed C405 Unnecessary list literal - rewrite as a set literal. 2022-02-17 16:31:30 -03:00
Salvador E. Tropea c11627f56d Fixed C402 Unnecessary generator - rewrite as a dict comprehension. 2022-02-17 16:07:17 -03:00
Salvador E. Tropea 9082a7ec69 Fixed C413 Unnecessary list call around sorted(). 2022-02-17 16:04:13 -03:00
Salvador E. Tropea ebc6458948 Fixed schematic: Paper orientation was discarded on v5 files.
Fixes #150
2022-02-17 12:40:29 -03:00
Salvador E. Tropea 174bd44a09 Changed: The `source` path for `compress` now has pattern expansion
Fixes #152
2022-02-17 10:56:11 -03:00
Salvador E. Tropea 6281a40335 Fixed spelling 2022-02-16 19:56:04 -03:00
Salvador E. Tropea 751f093de9 Removed extra "pass" statements 2022-02-16 19:04:44 -03:00
Salvador E. Tropea 5fb64472db Adjusted the generated YAML example to be more coherent
- Fixed list on list indentation
- No extra EOL at EOF
-  No trailing spaces on some examples
2022-02-16 18:28:05 -03:00
Salvador E. Tropea 7781582962 Made executable some scripts 2022-02-16 17:39:18 -03:00
Salvador E. Tropea 3047ab3031 Fixed the YAML example, wrongly quoted string 2022-02-16 17:29:48 -03:00
Salvador E. Tropea b2ab00f6cb Added global *units* option
Solves the KiCad 6 dimensions issue. See #146
2022-02-14 15:42:54 -03:00
Salvador E. Tropea ccbb8a6060 Adapted two tests to the new details
- New pcbnew import in gs.py
- New return value for _get_columns()
2022-02-14 14:49:16 -03:00
Salvador E. Tropea d3ad786dd5 Fixed extra columns added by default 2022-02-14 14:19:56 -03:00
Salvador E. Tropea 5d2d0a4195 Added MacroFab XYRS support
- Internal BoM options:
  - `angle_positive`
  - `csv.hide_header`
  - `footprint_populate_values`
  - `footprint_type_values`
  - `units` mils
- Columns:
  - `Footprint Type`
  - `Footprint Populate`
  - `Footprint X-Size`
  - `Footprint Y-Size`
2022-02-14 13:49:56 -03:00
Salvador E. Tropea d7430499d2 Removed coverage exclusions for KiCad 6 code 2022-02-11 12:58:39 -03:00
Salvador E. Tropea 71c77e89ce Fixed bom generation when no PCB is available. 2022-02-11 12:16:34 -03:00
Salvador E. Tropea edbe29740b Internal BoM: XYRS support
- Now the `bom` output can generate files like `position`
2022-02-11 11:45:43 -03:00
Salvador E. Tropea ed4ff70033 Internal BoM: two other options for the sorting criteria. 2022-02-11 11:04:21 -03:00
Salvador E. Tropea 644f6d1fda Internal BoM: Added footprint X, Y, rotation and side columns
- First step towards XYRS support
2022-02-11 11:01:14 -03:00
Salvador E. Tropea ae0fdd74ee More deterministic Board View output
- More things sorted
2022-02-07 13:26:58 -03:00
Salvador E. Tropea fac1c21282 Fixed flake8 errors 2022-01-29 16:33:32 -03:00
Salvador E. Tropea 400d06f9b3 Adjusted error messages and crossed comp generation.
- Also the name of the member for lib_name
2022-01-29 16:16:39 -03:00
Salvador E. Tropea 3b7b200d4f Merge branch 'master' of https://github.com/Atmelfan/KiBot into Atmelfan-master 2022-01-29 15:16:48 -03:00
Salvador E. Tropea 8c3bb74eb7 Upgraded to mcpyrate 3.6.0 (last release) 2022-01-29 14:38:00 -03:00
Gustav Palmqvist 70fdb9c617 Handle lib_name in symbol instance 2022-01-27 23:16:54 +01:00
Salvador E. Tropea d629afcf92 Added support for the controlled impedance flag in KiCad 6 2022-01-18 16:06:17 -03:00
Salvador E. Tropea b73a2e51d4 Added stackup support to the report 2022-01-18 15:51:55 -03:00
Salvador E. Tropea b6b42cc9bf Fixed flake8 details 2022-01-18 13:42:23 -03:00
Salvador E. Tropea 7a4c3468fa Added copper_thickness option
- Now we get some defaults from KiCad 6 stackup
2022-01-17 18:50:21 -03:00
Salvador E. Tropea 1d1abf0ce4 Fixed flake8 detail 2022-01-17 18:09:41 -03:00
Salvador E. Tropea f4d6568753 Added error message if we can't detect KiCad version 2022-01-17 18:08:49 -03:00
Salvador E. Tropea 46d5d9ad65 Added support for different top/bottom PCB colors
- Solder mask
- Silk screen
2022-01-17 16:02:09 -03:00
Salvador E. Tropea 204fb985fe Simplified the global GS options transfer 2022-01-17 12:16:25 -03:00
Salvador E. Tropea 514cc949b6 Added support for edge_connector, castellated_pads and edge_plating 2022-01-16 19:13:20 -03:00
Salvador E. Tropea da1da26983 Added check for the pcb_file (bogus during some tests) 2022-01-16 18:19:42 -03:00
Salvador E. Tropea 4d6b47edd0 Fixed missing check for kicad_pcb/setup/stackup iterator 2022-01-16 15:19:04 -03:00
Salvador E. Tropea 33da0f9e87 Added support for KiCad 6 copper finish option. 2022-01-16 13:24:10 -03:00
Salvador E. Tropea a82a07bced Fixed: replace %I by '' for cases where %I doesn apply. 2022-01-16 00:34:05 -03:00
Salvador E. Tropea 278de8fb16 Added report generation (for design house)
Related to #93
2022-01-15 15:47:48 -03:00
Salvador E. Tropea 4d5220006f Changed the default output pattern
- Now includes the `output_id` (%I)
2022-01-15 15:45:28 -03:00
Salvador E. Tropea a2f5da14ab Now the global PCB detail vars control the default colors
- Used by rednder_3d and pcbdraw outputs.
2022-01-14 13:42:35 -03:00
Salvador E. Tropea 4bba7e9a9a Added global options to define the PCB details. 2022-01-14 13:42:04 -03:00
Salvador E. Tropea 8676f28f3a Fixed problems when using a hidden config file
- Found when using an output that needs the SCH, not specifying the
  SCH and more than one SCH was found.

Closes #138
2022-01-14 10:32:45 -03:00
Salvador E. Tropea 926d6eb24c Added support for `--subst-models` option for KiCad 6's kicad2step.
Closes #137
2022-01-13 19:51:59 -03:00
Salvador E. Tropea 256876a1bd Added support for the magic KICAD6_*_DIR environment variables
Related to #135
2022-01-10 20:50:53 -03:00
Salvador E. Tropea 95cb65c987 Added KiCad 6 support for the BoardView output 2022-01-10 20:49:36 -03:00
Salvador E. Tropea 24ba23d203 Separated YAML tests that makes reference to SCH files
- Avoiding KiCad 5 and 6 mixes
2022-01-10 20:48:11 -03:00
Salvador E. Tropea 8a4064a544 Added KiCad 6 native symbols default dir 2022-01-07 17:49:33 -03:00
Salvador E. Tropea dadcd8a543 Added support for `bus_alias` [KiCad 6]
- Not documented in the file format
Closes #133
2022-01-07 12:01:17 -03:00
Salvador E. Tropea e2147f40ee Added fields update to the QR stuff
- Footprints are now virtual
- Fixed: Modules used the SCH text
- Fixed: Wrong KiCad 6 SCHs (not copied from bogus ones)
2022-01-06 14:25:09 -03:00
Salvador E. Tropea a5052b49e4 Patch to fix new alias attributes in Python 3.10
- From @brathis
- Seems to be ok for Python 3.9
2022-01-06 12:42:59 -03:00
Salvador E. Tropea c213a02543 Removed file no longer used by mcpyrate 2022-01-06 12:14:38 -03:00
Salvador E. Tropea 93ee8c3acb Updated mcpyrate to 3.5.4 (last available) 2022-01-06 12:10:06 -03:00
Salvador E. Tropea 34bea23e06
Merge pull request #129 from rleh/patch/v6_sch
KiCad 6: Catch environment.vars==None case
2022-01-04 16:54:50 -03:00
Salvador E. Tropea be59ee397e Added support for KiCad 6 to the `update_qr` preflight.
Related to #93
2022-01-04 16:52:12 -03:00
Raphael Lehmann 7bdc1f511e v6 config: Catch environment.vars==None case 2022-01-04 17:50:10 +01:00
Salvador E. Tropea 7992fd9888 Added preflight option to update the QR codes.
- Needed for s-expression files
- Not working for KiCad 6 (bug in the Python API)
2022-01-04 10:21:59 -03:00
Salvador E. Tropea 5017f7e078 Added QR codes generation: symbols and footprints.
Related to #93
2022-01-03 12:35:33 -03:00
Salvador E. Tropea 4c3259a2f8 Fixed flake8 details 2022-01-03 12:33:35 -03:00
Salvador E. Tropea 7155539777 Added KiCad 6 support to the pseudo-netlist generation. 2021-12-31 16:45:40 -03:00
Salvador E. Tropea 1eefdeb5a3 Added support for upto 9 comment lines (KiCad 6) 2021-12-31 11:43:03 -03:00
Salvador E. Tropea 64bfc4824d Added `--cli-order` option to generate outputs in arbitrary order.
- Also updated some output details in the README
Related to #106
2021-12-31 10:40:17 -03:00
Salvador E. Tropea 081786cf5e Fixed circular dependency in the tests 2021-12-30 19:02:04 -03:00
Salvador E. Tropea e5ed4b6652 Added support for variants on KiCost output.
Related to #106
2021-12-30 18:26:31 -03:00
Salvador E. Tropea 4b3636313c Update XML: Removed the side effect Bom.
Related to #106
2021-12-30 13:12:00 -03:00
Salvador E. Tropea e5f910bc6d Fixed: removed debug info in KiCost output. 2021-12-30 12:32:33 -03:00
Salvador E. Tropea bb27491313 Added: position files now can include virtual components.
Related to #106
2021-12-30 12:21:41 -03:00
Salvador E. Tropea c91d84c1f3 Added some very basic variant support to KiCost output
- Just support a very basic KiCost variant, delegated to KiCost
- Related to #106
2021-12-30 11:30:17 -03:00
Salvador E. Tropea 9417b61478 Moved all loggers to the same domain.
- To fix the warnings count
2021-12-30 11:09:36 -03:00
Salvador E. Tropea 6d939bbdbe Added datasheets downloader
Closes #119
2021-12-29 15:20:54 -03:00
Salvador E. Tropea 167bdcd4e9 Fixed problems when generating a Makefile and no PCB or SCH is defined 2021-12-29 15:18:47 -03:00
Salvador E. Tropea be4f0a095c Removed unused constant 2021-12-29 15:18:07 -03:00
Salvador E. Tropea 358fb4f816 Added message about problems with 3D Viewer on KiCad 6.0.0. 2021-12-28 18:04:20 -03:00
Salvador E. Tropea 1c3cc13004 Fixed flake8 errors 2021-12-28 18:04:04 -03:00
Salvador E. Tropea 057f8688da Added support for STEP generation using KiCad 6
- Uses a new KiAuto release (1.6.0) to workaround KiCad 6 limitation
- Updated the tests
- Updated the board samples, another "limitation" in KiCad 6 (no longer
  looks for .step files when the model is a .wrl)
2021-12-28 17:44:36 -03:00
Salvador E. Tropea 1dda02efab Added code to help tools like iBoM support KiCad nightly 2021-12-27 15:22:05 -03:00
Salvador E. Tropea a72aac4e54 Added support for iBoM 2.4.1 2021-12-27 14:13:12 -03:00
Salvador E. Tropea 67b807610e Fixed details changed in KiCad nightly package 2021-12-27 14:12:20 -03:00
Salvador E. Tropea babf622eca Added support for KiCad v6 config in JSON format. 2021-12-27 14:11:37 -03:00
Salvador E. Tropea 0569beff33 Documented bugs in KiCad v6 RC1 affecting KiBot 2021-12-27 14:11:02 -03:00
Diego Capusotto 926d4c84d3 Added support to write KiCad v6 schematics with variants 2021-12-21 13:04:09 -03:00
Diego Capusotto 7894e9b45e Reduced complexity 2021-12-21 13:01:17 -03:00
Diego Capusotto e07f45bd2d Adapted sexpdata.py to indent as KiCad.
- Also fixed a problem in _tosexp (Python 2 legacy?)
2021-12-21 13:00:48 -03:00
Diego Capusotto babc9c4ea0 Added debug for not fitted components 2021-12-21 12:51:31 -03:00
Diego Capusotto 4fe6379b49 Added an option to remove the PCB edge on PCB print
- Only for KiCad 6 and only if printing to one page
- A tradition of discarding user options ...
2021-12-18 18:39:24 -03:00
Diego Capusotto 95f9b7914e KiCad 6 doesn't support the Rescue layer
- Now we use User.9 for KiCad 6
2021-12-18 18:38:08 -03:00
Diego Capusotto 0157a3ea4b Added KiCad 6 support to the sch_replace pre-flight 2021-12-18 17:02:17 -03:00
Diego Capusotto 2987122798 Documented the limitation about the date in the KiCad 6 title block 2021-12-18 17:01:11 -03:00
Diego Capusotto 08ef3e847a v6 loader: catch case were the file is just a word 2021-12-18 12:09:51 -03:00
Diego Capusotto 46378b992b Added some abstraction for the KiCad project file extension. 2021-12-18 11:13:58 -03:00
Diego Capusotto d989857ac7 Removed temporal project left by out_step
Closes #124
2021-12-18 11:11:55 -03:00