You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
When committing changes, people sometimes forgot to do zone fills. Especially in a release this can be problematic, since then reviews might have been done on an old version of the zone fills and might miss problems the only surface when the zones are refilled, or the zone fill might be forgotten before producing fabrication outputs.
Describe the solution you'd like
Adding a preflight that does a zone fill and then fails if anything changed. This way I can add a push workflow that tests all commits to see if they were properly filled.
Note that there is already a check_zone_fills option, but that does not actually check anything, it just updates the zonefills on the in-memory pcb before doing any further processing (and also fill_zones which does the same, but also saves the result to disk). Neither of these solve my request.
Describe alternatives you've considered
Pre-commit hooks could also be used, but are opt-in on the developer's machine, so are less secure.
The text was updated successfully, but these errors were encountered:
The name check_zone_fills is misleading, but I think it was inherited from the old kiplot tool. I have a tendency to favor compatibility instead of intuitive names.
I agree that a real check is a good idea, but I think you can solve it with the current functionality. Take a look at the following test case: tests/yaml_samples/diff_zones_1.kibot.yaml
kibot:
version: 1preflight:
check_zone_fills: trueoutputs:
- name: 'diff_pcb_show'comment: "Show differences for the zone fill"type: difflayers: copperoptions:
cache_dir: .cacheold: ''old_type: filenew_type: current
- name: 'diff_pcb_check'comment: "Check the zone fill doesn't generate important changes"type: difflayers: copperoptions:
cache_dir: .cachediff_mode: statsthreshold: 100old: ''old_type: filenew_type: current
This is a diff between the current file on disc and the current PCB on memory, abusing the default values ;-)
We use two outputs, one to generate a nice visual diff, and the other to measure the difference. It generates an error if the difference is above the threshold. In a workflow always saving the artifacts (even on fail) you'll get a nice PDF showing why it failed.
One think I could do is to just add internal template for this, so you just need a couple of lines in the config.
Is your feature request related to a problem? Please describe.
When committing changes, people sometimes forgot to do zone fills. Especially in a release this can be problematic, since then reviews might have been done on an old version of the zone fills and might miss problems the only surface when the zones are refilled, or the zone fill might be forgotten before producing fabrication outputs.
Describe the solution you'd like
Adding a preflight that does a zone fill and then fails if anything changed. This way I can add a push workflow that tests all commits to see if they were properly filled.
Note that there is already a
check_zone_fills
option, but that does not actually check anything, it just updates the zonefills on the in-memory pcb before doing any further processing (and alsofill_zones
which does the same, but also saves the result to disk). Neither of these solve my request.Describe alternatives you've considered
Pre-commit hooks could also be used, but are opt-in on the developer's machine, so are less secure.
The text was updated successfully, but these errors were encountered: