
Current development builds for KiCAD 7 include the new constraint keyword physical_hole_clearance for detecting hole and pad collisions within a common net. This is useful for detecting via-in-pads which are often undesirable, as some PCB vendors upcharge to plug vias that could cause wicking during assembly.
To set up the custom design rule, first install a nightly build of KiCAD (6.99). Please note that saving a project with a development version of KiCAD will prevent older versions from opening the PCB file. To prevent this, I run the DRC from KiCAD 6.99 and make the necessary changes from KiCAD 6.

I bought a spool of Protopasta iron-filled PLA to test in a project where I need to fit a flyback transformer into a confined space. The prototype will likely be 3D-printed in PLA plastic and contain some moving parts wrapped in magnetic wire for power transfer.
For optimal performance, flyback transformers are generally wound around a ferrite core, which has high magnetic properties but low conductivity to reduce eddy currents.

This bug is fixed in Java 23u10
I came across an apparent bug in java.util.zip.ZipInputStream where reading a certain type of zip file causes an exception:
java.util.zip.ZipException: invalid entry size (expected 0 but got 199 bytes)
at java.util.zip.ZipInputStream.readEnd(ZipInputStream.java:384)
at java.util.zip.ZipInputStream.read(ZipInputStream.java:196)
at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:122)
The file in question reads fine using archiving utilities and Java’s ZipFile, so the issue is likely rooted in ZipInputStream. My application requires reading the zip file sequentially, so ZipInputStream is my only option besides a third-party library. I decided to search for a solution using vanilla Java rather than pulling in a new dependency.
This post will be continuously updated with useful commands related to HTTP.
Launches an HTTP server in the current directory for serving files
1python3 -m http.server [port]
Post two files
1curl -X POST -F "file1=@file1.png" -F "file2=@file2.png" --no-buffer https://chandler.io/test