Salvador E. Tropea
087e36b2c7
KiCost variants: empty DNF fields shouldn't be excluded.
...
Fixes #101
2021-11-15 15:06:32 -03:00
Salvador E. Tropea
7c3f273684
Basic KiCost support.
2021-03-31 12:27:55 -03:00
Salvador E. Tropea
1290bb6995
New KiCost variant style.
...
- New internal filters `_var_rename_kicost` and `_kicost_dnp`.
- New `skip_if_no_field` and `invert` options to the regex used in the
generic filter.
2021-03-30 09:37:36 -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
91dc9c5488
Added support for filters that adds/removes components.
...
- Intended for BoM transformations
- Also enhanced the support for filter chains
2021-03-19 19:20:53 -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
4a3e7faace
Added a new filter used to rotate footprints.
...
Used to generate position files for some manufacturers like JLC.
Also in this patch:
- Now position files are naturally sorted (R10 after R9, not after R1)
- Position files in CSV format quotes only the columns that could
contain an space. Just like KiCad does.
- Fixed: Generic filter `include_only` option worked only when debug
enabled.
2020-12-28 18:26:27 -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
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
1163d28e71
Added "Not " prefix to negation filter names.
2020-09-05 18:56:01 -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
76ea47c04f
Now the default exclude filter excludes ref == '#*'
2020-09-01 20:30:34 -03:00
Salvador E. Tropea
9ebf18ba11
Added new basic filters.
...
`!` is always False
`_none` is no filter
2020-09-01 18:48:45 -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
58430d8611
Fixed errors in Not and Multi Filters implementation.
2020-08-30 11:53:21 -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
6af9faf909
Created the base filter class and the generic filter.
...
Moved all the KiBoM and IBoM filter functionality that was in their
variants to this generic mechanism.
2020-08-29 17:39:56 -03:00