Commit Graph

1459 Commits

Author SHA1 Message Date
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
Salvador E. Tropea 4fbd69ac3b [Global options][Added] `environment`.`extra_os` to define environment variables 2023-05-02 13:12:50 -03:00
Salvador E. Tropea 4e72af9761 [Added] OS environment expansion in ${VAR} 2023-04-28 13:46:58 -03:00
Salvador E. Tropea e4ba2d7d8a [v6/7 Schematic] Better error message when missing UUID 2023-04-28 11:00:51 -03:00
Salvador E. Tropea a05be2240e [v6/7 Schematic] Hierarchy expanded only if needed 2023-04-28 10:45:38 -03:00
Salvador E. Tropea fea0d04e87 [Filters] More debug in field modify 2023-04-28 10:39:51 -03:00
Salvador E. Tropea 90f088863a [v6/v7 Schematic] Better error when we hit an UUID issue 2023-04-28 09:24:26 -03:00
Salvador E. Tropea 4992937cf5 [v6/v7 Schematic] Better handling of sub-sheet instances
- When a sub-sheet is the root of another hierarchy.
- We no longer discard the instances, unless expanding the hierarchy
- Also another step to separate the cross and hierarchy expansion
2023-04-28 09:22:15 -03:00
Salvador E. Tropea 42445e8294 [v6/v7 Schematic] Fixed error introduced in the crossed lib 2023-04-27 17:10:21 -03:00
Salvador E. Tropea 0f5d5c5381 [v6/7 Schematic] Separated the cross and hierarchy expansion
- At least logically
- They still tied, but can be separated
2023-04-27 16:39:32 -03:00
Salvador E. Tropea f6c358b829 [v6/7 Schematic] Added support for bogus "project"
- One of those things KiCad saves but does nothing.
2023-04-27 16:27:20 -03:00
Salvador E. Tropea f05b8bcf88 [v6/v7 Schematic] More debug info 2023-04-27 16:23:27 -03:00
Salvador E. Tropea fcf4871e38 [v6/v7 Schematic] Reworked the UUID mechanism
- Now we generate valid UUIDs for all things
- KiCad 6 support
- Better tests, forcing to reload the generated files
2023-04-27 15:06:29 -03:00
Salvador E. Tropea 6b9ab5f448 [v6/v7 Schematic] Allow loading files without UUIDs
- This is currently working only for v7, needs rework for v6
2023-04-26 08:41:13 -03:00
Salvador E. Tropea b2db4f33d0 [v6/7 Schematic][Fixed] Error in saved version
- Mixing save/load v6/v7 produced hybrids
2023-04-26 08:39:52 -03:00
Salvador E. Tropea 5a8c54fe44 [v6/7 Schematics][Fixed] Repeated UUIDs saved in variants
- Mostly oriented to v7
2023-04-25 11:17:43 -03:00
Salvador E. Tropea 0bed962565 [v6/7 Schematic][Fixed] Net Class Flags not saved 2023-04-25 11:12:56 -03:00
Salvador E. Tropea 17b861260b [v6/7 Schematic][Fixed] Text boxes mixed with common text
- Not really important because they got correctly saved anyways
2023-04-25 11:09:19 -03:00
Salvador E. Tropea d4ceef8fb9 Bumped version to 1.6.3 2023-04-24 13:31:06 -03:00
Salvador E. Tropea 9b88e25d10 [Blender Export] Updated the blender script
- To support the new options
2023-04-24 12:36:35 -03:00
Salvador E. Tropea 2ed0622a8b [Blender Export] Better light and with more options 2023-04-24 11:17:12 -03:00
Salvador E. Tropea d3f9a15739 [Added] Export KICADn_* environment variables for the older versions
- So you can use KICAD6_* variables on KiCad 7.
2023-04-21 11:30:48 -03:00
Salvador E. Tropea f8cc0e29bb Removed debug code 2023-04-18 11:25:12 -03:00
Salvador E. Tropea 97ff9a0d09 [PcbDraw] Better error when a style is missing
- Now we don't lie about using a path if the name is absolute
2023-04-16 09:00:02 -03:00
Salvador E. Tropea 1b66992088 [Preflights][Fixed] Temporals not removed on success 2023-04-16 08:19:08 -03:00
Salvador E. Tropea 77b7abc24b [Panelize][Fixed] Keep temporals only if fail 2023-04-15 21:06:51 -03:00
Salvador E. Tropea 9ca821efee [Panelize] Keep temporals when fails 2023-04-15 20:00:09 -03:00
Salvador E. Tropea 3c749719dd [VRML][Added] Option to use the auxiliary origin as reference
Closes #420
2023-04-15 19:45:52 -03:00
Salvador E. Tropea 5e80a1e150 [VRML][Fixed] Y coordinate
Fixes #419
2023-04-15 19:32:59 -03:00
Salvador E. Tropea 124fc8e7b5 [Added] Expansion pattern **%M**
- Directory where the pcb/sch resides. Only the last component
  i.e. /a/b/c/name.kicad_pcb -> c

Closes #421
2023-04-15 19:18:26 -03:00
Salvador E. Tropea 3b0a26c7ab [Added] Support for netclass flags
Closes #418
2023-04-14 13:28:28 -03:00
Salvador E. Tropea b1b798689f [3D Models] Added support to pass variables to download URL
Should help for #414
2023-04-14 13:05:09 -03:00
Salvador E. Tropea e76a3b4e25 [Schematic files] Support for `exclude_from_sim` in texts 2023-04-13 11:22:24 -03:00
Salvador E. Tropea 4050936875 [KiCad Config] Give priority to KICAD_PATH 2023-04-13 11:21:35 -03:00
Salvador E. Tropea a9b91262ad [KiCad 8] We no longer need to update local coordinates 2023-04-11 11:26:38 -03:00
Salvador E. Tropea 976e6af932 [KiCad 8] Adapated to the new class reported by footprint drawings
- Now that all drawings are PCB_SHAPE, the GetClass doesn't report
  MGRAPHIC anymore.
2023-04-11 10:02:58 -03:00
Salvador E. Tropea 52ac92c42d [3D Models] Added workaround for KiCad 7
- Fails to export VRMLs for PCBs using paths relative to the footprint.

See #417
2023-04-07 11:05:34 -03:00
Salvador E. Tropea 6649038d79 [3D][Fixed][KiCad 7] 3D models not downloaded
Closes #417
2023-04-06 19:32:14 -03:00
Salvador E. Tropea 52610bd407 [KiCad 8] Changes in the drill file names 2023-04-05 13:10:34 -03:00
Salvador E. Tropea 1ea51f4908 [KiCad 8] No VECTOR2I(wxPoint) constructor 2023-04-05 13:09:03 -03:00
Salvador E. Tropea a09d62099e [KiCad 8] Added support for FP_SHAPE -> PCB_SHAPE
- Really?
2023-04-05 11:01:19 -03:00
Salvador E. Tropea fdc8019ec5 [KiCad 8] Added detection 2023-04-05 11:00:45 -03:00
Salvador E. Tropea f9c45899e4 [DOCs] Added various mentions about the `resources_dir` variable 2023-04-05 07:53:13 -03:00
Salvador E. Tropea 58417e428d Merge branch 'dev' of https://github.com/INTI-CMNB/KiBot into dev 2023-04-04 13:50:58 -03:00
Salvador E. Tropea 6feddd06a5 [Added] Mechanism to install fonts and colors 2023-04-04 13:49:21 -03:00
Salvador E. Tropea d9b3da1e0d [SCH print][Added] Support for title change 2023-04-02 09:59:09 -03:00
Salvador E. Tropea 1a1311dc6d [General][Added] Support for time stamp in the date
- i.e. 2023-04-02T09:22-03:00
2023-04-02 09:54:30 -03:00
Salvador E. Tropea 3221a7fe00 [PCB Print][Fixed] Problems with images in the WKS (KiCad 5/6)
- Added regression test
2023-04-01 18:07:51 -03:00
Salvador E. Tropea 7849fc0bde [CLI] Fixed when the output dir for the log doesn't exist 2023-04-01 14:46:35 -03:00
Salvador E. Tropea bb592a8ec4 [CLI] Added option to log a file
- This is in addition to logging to stderr.
- This log is currently done with full debug information.
2023-04-01 14:07:31 -03:00