Commit Graph

54 Commits

Author SHA1 Message Date
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 6281a40335 Fixed spelling 2022-02-16 19:56:04 -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 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 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 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 9417b61478 Moved all loggers to the same domain.
- To fix the warnings count
2021-12-30 11:09:36 -03:00
Diego Capusotto 71c7150baa Added support for \n and \t to text* options of join
Related to #108
2021-12-14 17:45:10 -03:00
Diego Capusotto 9be560e78d Now the text* options of join must include any separator
- Removed the space when used
- Related to #108
2021-12-14 16:49:46 -03:00
Salvador E. Tropea 995219a8ea Added option to add text to the `join` in the internal BoM
Related to #104
2021-12-01 18:07:41 -03:00
Salvador E. Tropea 49ea1bb62a Internal BoM: `count_smd_tht` option to compute SMD/THT stats.
Closes #113
2021-11-22 14:34:07 -03:00
Salvador E. Tropea 998754753d Added Default global `dir` option 2021-11-15 14:40:30 -03:00
Salvador E. Tropea ca5dfb428b Internal BoM: the field used for variants doesn't produce conflicts.
- Fixes: #100
2021-11-15 13:39:47 -03:00
Salvador E. Tropea 3eebc04e4b Changed the mechanism to avoid merging components with empty fields 2021-10-18 16:45:20 -03:00
Salvador E. Tropea 0f0e739026 Changed the default `group_fields` list.
Internal BoM: now components with different Tolerance, Voltage, Current
and/or Power fields aren't grouped together.
These fields are now part of the default `group_fields`. (#79)
2021-09-27 11:31:51 -03:00
Salvador E. Tropea 1dea3970bc XLSX BoM: option to control the logo scale (Fixes #84) 2021-09-16 07:58:48 -03:00
Salvador E. Tropea 3bdae8507a Added suppport for multiprojects to the internal KiCost.
- Also changes the KitSpace queries format to be more readable.
2021-05-25 18:02:22 -03:00
Salvador E. Tropea 7c23381adb Added distributors selection to KiCost+KiBot 2021-04-28 12:13:12 -03:00
Salvador E. Tropea 55277a550f More KiCost integration in KiBoM.
- Also added level and comment to columns in the XLSX BoM output.
- Now user columns can be added to the KiCost sheet.
- The "Colors" sheet now includes KiCost colors
- The KiCost column names are more coherent with our names
- Style colors affects the KiCost colors
- About message includes KiBot version
- Header layout is also more coherent
- use_alt, number, max_col_width and ref_separator options are passed
  to KiCost
2021-04-25 09:29:56 -03:00
Salvador E. Tropea 16ddb9465f Added Internal BoM + KiCost integration
- Currently very basic, but you get "Costs" and "Costs (DNF)" work
  sheets in the XLSX output when the xlsx.kicost option is enabled.
2021-04-15 11:14:37 -03:00
Salvador E. Tropea 01291ebe63 Added field rename filter.
Including an internal version to emulate KiCost behavior.
2021-03-23 13:20:26 -03:00
Salvador E. Tropea 40bd7c24f2 Added support for KiCost's subparts 2021-03-19 19:41:46 -03:00
Salvador E. Tropea c88dceb6dc Added a BoM option to disable the ceil() "rounding" 2021-03-19 12:46:37 -03:00
Salvador E. Tropea 4d3c3d43b3 Added fields fallbacks to the BoM grouping fields.
Used when the field used to group components is empty.
2021-03-19 11:48:45 -03:00
Salvador E. Tropea 1b48e614a7 Added pattern expansion in the `dir` option for outputs
Closes #58
2021-03-12 21:14:39 -03:00
Salvador E. Tropea a0218e92ab Removed dead code. 2021-02-12 15:03:39 -03:00
Salvador E. Tropea 91b38fdb9f Fixed to allow BoM consolidation without `ref_id` 2021-02-05 10:24:35 -03:00
Salvador E. Tropea 15474ae4d7 Now you can consolidate more than one project in one BoM.
The basic idea comes from pimpmykicadbom by Anton Savov (@antto)
2021-01-21 14:43:47 -03:00
Salvador E. Tropea 88cd5927dc Now you can ask to compress the targets of an output (by out put name) 2021-01-18 16:12:30 -03:00
Salvador E. Tropea b347a6ca30 The board object is no longer passed to run methodes.
The global GS.board is used instead.
2021-01-15 14:14:17 -03:00
Salvador E. Tropea b0cc64e5c5 Various fixes in the generated example.
- Now we can have a `example` different than the default.
- Added some _default members
- Support for missing schematic when using --list

Related to #40
2021-01-05 15:06:23 -03:00
Salvador E. Tropea 9a1e1f39e7 Internal BoM: added `no_conflict` option.
Used to exclude fields from conflict detection.
2021-01-05 12:09:29 -03:00
Salvador E. Tropea 007fc36d1e Fixed the components fields reset mechanism.
My previous approach was incomplete.
2020-12-23 18:47:11 -03:00
Salvador E. Tropea 204ad189de Changed how variant field renamer is implemented.
- Now is a separated filter type (`var_rename`).
- Now all variants support a `pre_transform` filter list.
- An internal `_var_rename` filter is defined (default).
2020-12-23 10:19:23 -03:00
Salvador E. Tropea 2d55859782 Code style fixes (flake8) 2020-10-17 12:03:06 -03:00
Salvador E. Tropea 17aafd88a0 Adapted the speed meassurement script 2020-10-16 19:26:07 -03:00
Salvador E. Tropea ae9e889bc0 Added debug information to out_bom to detect the line numbers issue. 2020-10-16 16:32:24 -03:00
Salvador E. Tropea 27e4c23236 Added support for reference separator in BoMs.
So you can get things like "R1, R2, R3"
From the following PR: SchrodingersGat/KiBoM#139
by @n0dyjeff
2020-09-19 17:35:31 -03:00
Salvador E. Tropea 1ed960d045 Replaced dicts used just to test membership by sets. 2020-09-12 12:50:16 -03:00
Salvador E. Tropea b03b56ae5d Added more coherence to the variants/filters.
- Now they behave more coherently across outputs.
- Component status is explicitly reset, so having a variant + filter
  behaves in a more consistent way. Even when this isn't the
  recommended use.
- Virtual components are handled by the exclude filter.
- Moved code to modify the PCB to VariantOptions.
- Added a real virtual component to the tests, not a ridiculous case.
2020-09-08 20:01:16 -03:00
Salvador E. Tropea d719718eca Moved KiBoM default behavior to the KiBoM variant.
So it can be applied to other outputs.
2020-09-05 18:58:26 -03:00
Salvador E. Tropea 712d135df5 Fixed: if no filters are applied we must reset the fields.
Added funtions to apply the filters
Moved code from bom.py to out_bom.py
2020-09-02 18:07:38 -03:00
Salvador E. Tropea 42562185ea Added filter options using PCB attributes.
KiCad 6 will break this, we'll see how to adapt.
2020-09-02 14:48:26 -03:00
Salvador E. Tropea 05f14e2049 Removed the plural in variant.
Is just one. It can be complex, but one name.
2020-09-01 16:51:11 -03:00
Salvador E. Tropea 7882cb0f4f Moved internal filters to the base class.
So they can be used not only for internal BoM purposes.
2020-08-31 20:48:56 -03:00
Salvador E. Tropea a1455e0f46 Added more flexibility to filters.
Support for:
- Pass all
- Negated (in addition to its internal option)
- List of filters
2020-08-29 19:32:04 -03:00
Salvador E. Tropea c0a1867dd5 Added support for filters to the internal BoM generator.
- Now we can configure more details, like the DNC.
- We can also mix KiBoM and IBoM strategies.
- Adapted the test examples that used filtering.
2020-08-29 17:41:57 -03:00