Commit Graph

1508 Commits

Author SHA1 Message Date
Salvador E. Tropea b6815b6a94 [Panelize][Added] Expand text variables and KiBot %X markers
- in text objects

Related to #497
2023-09-24 17:13:33 -03:00
Salvador E. Tropea 9ce2321890 [BoM][Fixed] LCSC links
- Missing .html
2023-09-12 13:44:00 -03:00
Salvador E. Tropea e88df7f595 [Internal Templates][Added] 4 templates for simple 3D render using Blender 2023-09-08 13:08:05 -03:00
Salvador E. Tropea 6c2ec777a3 [Blender export][Added] Traceback when Blender provides it 2023-09-08 12:52:42 -03:00
Salvador E. Tropea 16d0aef8a0 [Fixed] Missing warning 132 definition 2023-09-08 11:22:39 -03:00
Salvador E. Tropea 565c3152d9 [Added] Warning for wrong dir/output separation
Seen on #493
2023-09-08 10:52:10 -03:00
Salvador E. Tropea ca3860c784 [Dependencies] Made KiKit point to our fork
- The release has bugs and is 1.3.0 < 1.3.0.8
2023-09-06 12:51:33 -03:00
Salvador E. Tropea e5e9c370ae [Added] Suffix for disabled layers when reporting them 2023-09-05 13:25:58 -03:00
Salvador E. Tropea 694fa02c6b [Dep Download][Fixed] Problems when connection timed-out
- Missing return variable
2023-09-05 06:52:21 -03:00
Salvador E. Tropea 92ea7ea193 [Added] Message to clarify which KiCad 5 files are mixed
with the KiCad 6+ files
2023-09-04 13:43:07 -03:00
Salvador E. Tropea 390da80f7c [BoM][Added] LCSC links
From SchrodingersGat/KiBoM#190
2023-09-01 13:51:15 -03:00
Salvador E. Tropea 91f5bb81da [DOCs] Added a very visible warning about `-s all`
- In the set_text_variables
2023-09-01 13:45:29 -03:00
Salvador E. Tropea 32fff15a5c Added help for the error levels 2023-08-30 13:59:35 -03:00
Salvador E. Tropea 572204a5b2 [Update XML][Fixed] Error when using "Exclude from BoM" (KiCad 6)
- Parity for these components can't be checked. KiCad 7 fixes it.
  Now we just print a warning.
- Also fixes *exclude_from_bom* mismatch on KiCad 7
- Also fixes *Sheetfile* mismatch on KiCad 7 when testing from different
  directory

Fixes #486
2023-08-30 09:22:01 -03:00
Salvador E. Tropea 575eade044 [DOCs] Fixed missing f-string marker 2023-08-29 13:29:22 -03:00
Simon 94507fb7df [Panelize][Add] Dimensions 2023-08-29 13:22:14 -03:00
Salvador E. Tropea 9915bbd7ae [Help] Small fixes
- To keep the output similar to previous behavior
- Also adapted some tests to new markup
2023-08-29 09:45:17 -03:00
Salvador E. Tropea dacd98fbc4 Removed debug print 2023-08-29 09:09:37 -03:00
Salvador E. Tropea 4c4747b729 [DOCs] Changed to reST format for most docs
- Now KiBot can generate helps in reST format
- No more huge monolithic help
- Generated stuff is in separated files and marked as generated
- Index to search stuff by category
2023-08-29 08:02:02 -03:00
Salvador E. Tropea 916dab395e [DOCs][DXF] Made the docstring indentation coherent
Now is the same as other "any layer" docstrings
2023-08-29 07:50:37 -03:00
Salvador E. Tropea 5c9d6a22cf [DOCs][KiBoM] Removed bogus link (see '') 2023-08-29 07:49:42 -03:00
Salvador E. Tropea 0a5ab281fe [DOCs][Update XML] KiCad 6 -> KiCad 6+
Related to #486
2023-08-29 07:48:07 -03:00
Salvador E. Tropea 5bffb57b73 [DOCs][Filters][Added] Descriptive name 2023-08-22 09:36:57 -03:00
Salvador E. Tropea 9e8c346d35 [Blender Export][Added] Camera option to set the clip start
- Note that this is also a fix because now we compute the clip start
  for cameras with automatic position.

Closes #484
2023-08-22 09:04:37 -03:00
Salvador E. Tropea ffba8566fd [DOC][Filter][Spec to Field][Fixed] Important mark for spec/s
The `*` was in the wrong position
2023-08-22 09:00:21 -03:00
Salvador E. Tropea 17df07c243 [Blender export][Fixed] Call to get_output_filename
- Missing order argument
2023-08-16 14:04:07 -03:00
Salvador E. Tropea 948a40fb91 [Blender Export][Added] Options useful to generate simple animations
- The resulting PNGs can be converted to MP4 using ffmpeg
2023-08-16 13:36:19 -03:00
Salvador E. Tropea 4202f01c01 [Populate][Added] Basic support for regular list items
Closes #480
2023-08-15 12:45:00 -03:00
Salvador E. Tropea 49973b49cb [Flake8] Small changes suggested by flake8 5.0.4 2023-08-11 13:33:54 -03:00
Salvador E. Tropea 6f3dd0cabc [Blender Export] Added support for pcb2blender 2.6
- This is for Blender 3.5.1
2023-08-11 13:32:35 -03:00
Salvador E. Tropea cce2ba27ef [Dep Downloader][Added] Partial workaround for broken pip
- On Debian 12 pip installs to _root_/_prefix_/*local*/_dir_
  and not _root_/_prefix_/_dir_.
2023-08-10 12:51:04 -03:00
Salvador E. Tropea 7bc3f11a2b [Dep Downloader] Added support for PEP668 compliant Debian pip 2023-08-10 09:20:02 -03:00
Salvador E. Tropea 73097d7963 Dropped Python 2.x support in included libs
There is no point in having it and complicates the compatibility
detection.
2023-08-08 12:27:06 -03:00
Salvador E. Tropea 98346bcf39 Fixed use of Python 3.9 in populate.py 2023-08-08 11:25:54 -03:00
Salvador E. Tropea 67ae12bf1d Made shlex.join use optional
Introduced in Python 3.8
2023-08-08 11:19:47 -03:00
Salvador E. Tropea 973522d462 [Global options][Fixed] Solder mask restore for graphics 2023-08-04 12:37:09 -03:00
Salvador E. Tropea abeea7ec03 [Global options][Add] Option to remove solder mask apertures
`remove_solder_mask_for_dnp` similar to `remove_solder_paste_for_dnp`
but applied to the solder mask apertures.

Closes #476
2023-08-04 12:31:17 -03:00
Salvador E. Tropea 9c6ca87214 [iBoM][Added] Support for 2.7.0
- Pin 1 highlight changes
- The packaged iBoM is compatible with 2.6.0
- A patch to make it compatible was merged in upstream
- Current release reports a wrong version
2023-08-04 06:59:54 -03:00
Salvador E. Tropea 22248c0068 [Fixed] Copy of KiCost data
Now we use a copy of the components to allow field expansions.
So we must also copy the specs to the original components.
2023-07-31 13:10:40 -03:00
Salvador E. Tropea 055e832670 [BoM][Added] Support for ${field} expansion
Closes #471
2023-07-31 11:15:37 -03:00
Salvador E. Tropea 68e0ccc9b8 [iBoM][Added] `forced_name` to control the displayed name
- To force the name displayed at the top left corner

Closes #470
2023-07-31 09:12:05 -03:00
zedudi f9e774a1f5 aggregated csv export error fix 2023-07-26 07:15:33 -03:00
Salvador E. Tropea 7ff35563e6 [Fixed] Rotated text in worksheet for KiCad 7
Fixes #466
2023-07-21 19:43:21 -03:00
Salvador E. Tropea 6f8586e8cb [Worksheet] Fixed rotated polygons 2023-07-21 09:35:02 -03:00
Salvador E. Tropea 3460cdcf67 Bumped version to 1.6.4 2023-06-28 06:36:14 -03:00
Salvador E. Tropea 7e6154d9e9 [Position][Added] quote_all option
- To quote all columns in the CSV output

Closes #456
2023-06-26 09:33:08 -03:00
Salvador E. Tropea 997a5945b8 [V6 Schematic][Fixed] Force / on sheet paths for Windows
- Related to #452
2023-06-21 11:15:04 -03:00
Salvador E. Tropea 16a265f633 [Schematic v6][Fixed] bitmap scale and lib_name not saved
Fixes #451
2023-06-15 08:15:02 -03:00
Salvador E. Tropea 0fa7b92039 [Quick-Start] No longer use dedicated templates
- Now we use the internal templates
- This is because now they can be configured
2023-06-14 13:24:08 -03:00
Salvador E. Tropea f526812bcc [Internal Templates][Fixed] Missing quotes around recursive defs 2023-06-14 13:23:00 -03:00
Salvador E. Tropea 97554c2057 Added the name of the faulty YAML when we get an error 2023-06-14 13:21:42 -03:00
Salvador E. Tropea de4458ec46 [Internal Templates] Allow manufacturer imports to be used more than once
- You can define _KIBOT_IMPORT_ID to differentiate its instances
2023-06-14 09:43:28 -03:00
Salvador E. Tropea 216ac86114 [Internal Templates] Custom manf# field for MacroFab_XYRS 2023-06-14 09:22:41 -03:00
Salvador E. Tropea fb2cc4e4b3 [Internal Templates] Added panel demo import 2023-06-14 09:22:29 -03:00
Salvador E. Tropea 25b0557d5a [Compress] Added `skip_not_run`
-  Used to skip outputs not generated in default runs.
2023-06-14 09:01:27 -03:00
Salvador E. Tropea 5b37d88b28 [Internal templates] More customizations
- Target dir for manf outputs and separated for the archive
- Parameters to disable JLCPCB pos and bom
2023-06-14 08:39:05 -03:00
Salvador E. Tropea 2a357364d4 [Internal Templates] Made manufacturers gerber layer parametrizable
- Also made JLCPCB_stencil more like JLCPCB
2023-06-14 08:20:42 -03:00
Salvador E. Tropea 9f507e61a0 [Internal Templates] Another more specific parameter
- ONLY_SMD -> _KIBOT_POS_ONLY_SMD
2023-06-14 08:01:47 -03:00
Salvador E. Tropea 804ff3e210 [Internal Templates] Made the internal params for stencil more specific
- To avoid collisions
2023-06-14 07:37:56 -03:00
Salvador E. Tropea 3dd6951671 [Internal Templates] Made the CheckZoneFill parameter more specific
- To avoid collisions
2023-06-14 07:32:03 -03:00
Salvador E. Tropea f486fb34b9 [Navigate_Results][Added] Option to skip outs with run_by_default: false 2023-06-14 07:01:43 -03:00
Salvador E. Tropea d19b9343bc [Internal Templates][Added] Versions with stencil for all 2023-06-13 10:52:11 -03:00
Salvador E. Tropea 9c27c8e565 [Internal templates][Added] Threshold parameter to CheckZoneFill
- So we can easilly adjust the tolerated changes
2023-06-13 10:25:09 -03:00
Salvador E. Tropea c6f2cbb8e5 [Render_3D][Added] More options to control what we see
- realistic: can be used to disable the realistic colors and get the GUI ones
- show_board_body: can be used to make the PCB core transparent (see inner)
- show_comments: to see the content of the User.Comments layer.
- show_eco: to see the content of the Eco1.User/Eco2.User layers.
- show_adhesive : to see the content of the *.Adhesive layers.

See #445
2023-06-12 09:10:00 -03:00
Salvador E. Tropea 8d48519551 [Diff][Added] Recursive submodules init for worktree 2023-06-07 09:43:14 -03:00
Salvador E. Tropea 7a7beff556 [Diff] Changed repo protection to worktree mechanism
- As suggested by @matthijskooijman on #443
- This is cleaner than trying to use stash push/pop
- The old method is available
2023-06-06 12:53:19 -03:00
Salvador E. Tropea bd07442764 [Templates] Added JLCPCB_with_THT and JLCPCB_stencil_with_THT
- Using the new parametrizable imports
See #444
2023-06-01 13:42:39 -03:00
Salvador E. Tropea bfc7acc647 [Fixed] KiCad user template directory autodetection for KiCad 7+ 2023-06-01 13:00:54 -03:00
Salvador E. Tropea 23a4aa3fed
Merge pull request #448 from flaviut/flaviut-patch-1
Fix type error
2023-05-29 11:02:12 -03:00
Salvador E. Tropea 0ddc02c51d [Electro-grammar][Fixed] Problems with floating point tolerances
- i.e. 0.1%
Fixes #447
2023-05-29 10:09:05 -03:00
Salvador E. Tropea c87a37ea3c [Compress][Gerber][Fixed] Problems with inner layers
- When using legacy protel extensions

Fixes #446
2023-05-29 09:52:04 -03:00
Flaviu Tamas 60db7e2719
Fix type error
Uses duck-typing for the test instead of requiring the type be one of a few specific instances. This fixes the following error I get with kicad v7.0.4: `TypeError: float() argument must be a string or a real number, not 'VECTOR2I'`
2023-05-28 12:20:23 -04:00
Salvador E. Tropea 001938add3 [Groups] Fixed to use internal variable for groups from outputs
- To avoid interference with the configuration mechanism

See #435
2023-05-24 12:50:39 -03:00
Salvador E. Tropea f3a483f1ec [Fixed] Read gziped config files as text files 2023-05-24 12:39:57 -03:00
Salvador E. Tropea 281ed3be7e [Imports][Added] Allow to define @TAGS@ values during import
- Also added defaults
- BTW: disabled the YAML lint crap that insists in checking excluded
  files
2023-05-24 09:39:06 -03:00
Salvador E. Tropea 63f5a6de20 [Fixed][Copy files] 3D models copy issues
- PCB not loaded if the only action was to copy the 3D models
- Problems for STEP models when copying models
2023-05-22 12:50:41 -03:00
Salvador E. Tropea a35e9fc2c7 [Templates][Added] CheckZoneFill aborts on big changes
- Enables the check_zone_fill preflight
- Creates graphical diff
- Computes the number of changes

Closes #431
2023-05-18 11:28:06 -03:00
Salvador E. Tropea d6e008ff48 [PCB][Added] Invalidate the text variables cache
- Only when `set_text_variables` is used
- Can be controlled by global option `invalidate_pcb_text_cache`
- Not even the KiCad developers agree about if the cached
  values should be reset or not, see
  https://gitlab.com/kicad/code/kicad/-/issues/14360
  But if we don't reset them the user will think KiBot is failing
  to set them.
  As using `set_text_variables` is a clear intention of change
  I think this is the right behavior.

Closes #441
2023-05-18 10:47:23 -03:00
Salvador E. Tropea 5d190aee5d [CLI][Added] `--output-name-first` to list outputs by name
- No description

See #436
2023-05-18 09:39:42 -03:00
Salvador E. Tropea b28ea6d6cd [CLI][List] Various fixes to --only-names
- Added missing groups
- Sorted
- Don't show outputs when using --only-pre and no preflights
2023-05-18 09:19:46 -03:00
Salvador E. Tropea ef04782a9a [Groups][Added] outputs can request to be added to one or more groups
- Also list groups
- Allow empty groups so the user can catch typos

Closes #435
2023-05-18 09:07:17 -03:00
Salvador E. Tropea ebc48f57d9 [CLI][Added] More clear --list output and --only-pre option
- Takes most of the #436 suggestions
2023-05-17 12:43:41 -03:00
Salvador E. Tropea 921b04a396 [CLI] Added --only-names to --list 2023-05-17 11:17:44 -03:00
Salvador E. Tropea 7576bbd3b4 [Added] Human readable error when we get a corrupted project 2023-05-17 11:09:24 -03:00
Salvador E. Tropea e7cde1164c [Diff][Fixed] Assumption that all tags are in the trunk
- As stated by @matthijskooijman in
  91ffb04661c40102bfb856669039f0825ecc6883#r113724588 comment
  using --tags isn't necessary and includes *all* tags
- The code also assumed nothing was added before the "tag: "
  label, but this isn't true if the HEAD is tagged.
2023-05-17 10:53:43 -03:00
Matthijs Kooijman c9b2e7cdc5 [Diff] Fix typo in log message 2023-05-17 13:11:49 +02:00
Matthijs Kooijman f3c1865d00 [Diff][Schematic] Add debug prints about project-copies 2023-05-17 13:10:42 +02:00
Salvador E. Tropea a02999d50a [Diff][Schematic][Fixed] Project not copied to variant
- Any info related to the project wasn't applied.

Fixes #438
2023-05-16 13:28:51 -03:00
Salvador E. Tropea 8a4ea1be5a [List variants] More quiet when --only-names
See #434
2023-05-16 12:43:59 -03:00
Salvador E. Tropea f2f0ed1a9b [CLI][Added] Option to list variants
- Also changed the default --list behavior to avoid configuring outputs
- Old behavior can be obtained using --config-outs

Related to #434
2023-05-16 11:17:44 -03:00
Salvador E. Tropea 577acfe574 Added stack trace to various exit cases 2023-05-16 10:56:13 -03:00
Salvador E. Tropea 91ffb04661 [Diff][Fixed] KIBOT_TAG skipping commits, not tags
Fixes #430
2023-05-12 09:54:26 -03:00
Salvador E. Tropea b30ed4a6fc [Filters][Spec_to_Field][Added] Dist coherence and dist desc
- We can now try to parse the description of the component
- We can also try to compare the results from different distributors
2023-05-10 11:25:56 -03:00
Salvador E. Tropea 119d8fd2e2 [Electro Grammar][Added] Support for "WATT" and xxxx/yyyy
- Not just "Watts"
- xxxx/yyyy for text like "SMD/SMT"
2023-05-10 11:19:55 -03:00
Salvador E. Tropea 6be9cbecef [Filters][Added] `spec_to_field`
- To extract information from the distributors specs and put in fields.
  I.e. RoHS status.
2023-05-05 11:25:34 -03:00
Salvador E. Tropea b540b285de [KiCost] Indented messages from it
- To make output more readable
2023-05-05 11:22:41 -03:00
Salvador E. Tropea a1f78c296e [Filters][Added] New `generic` filter options
- `exclude_not_in_bom` and `exclude_not_on_board` to use KiCad 6+ flags

Closes #429
2023-05-05 06:37:34 -03:00
Salvador E. Tropea 66b0c20c69 [Position][Fixed] "Exclude from position files" not excluded
- When only SMD components are selected.

See #429
2023-05-04 13:20:48 -03:00
Salvador E. Tropea 6a1d6d313c [DOCs] Added link to the value_split example 2023-05-04 11:04:52 -03:00
Salvador E. Tropea 61a8fe7885 [Filters][Added] `value_split`
- To extract information from the Value field and put it in separated
  fields. I.e. tolerance, voltage, etc.
2023-05-03 14:09:35 -03:00