Skip to main content

in reply to Martijn Braam

Found a bug!

I have two part numbers for the same value & footprint:

C5, C2 1µF 1206 C1966364, C24497

The first one matches, the second one does not (it's 100nF) - but partlint doesn't report a problem with the second one until I remove the first one.

Nice tool and timing, you pushed it just in time for when I needed it 😁

in reply to Sebastian Krzyszkowiak

@dos huh that's weird, it should at least report it's inconsistent. I can at least reproduce it.
in reply to Martijn Braam

Optimized the tabulate usage a bit more so now it does multi-line cells for longer values so it stays readable.
in reply to Karl Schultheisz

@kdsch that's sadly a limitation of drawing tables in a shell. without any lines multi-line things become completely unreadable and line rendering can't really change spacing because of the terminal grid.
in reply to Martijn Braam

understood about the limitations of terminal emulators, but i think you have other options for displaying this data. one example would be to show only the items that are inconsistent, and rather than presenting them as a 2D table, having a more textual format such as YAML or TOML. i think there are tradeoffs; the table is most similar to what kicad provides but in my opinion isn't ideal for terminal output. there are probably other options i haven't thought of
in reply to Karl Schultheisz

@kdsch that's a nice idea, it certainly could use a few more output formats. For the "Inconsistent" rows in the table it already prints a textual output below the table because more information simply won't fit in the table rows. This should probably be extended to show all the detected errors there
in reply to Martijn Braam

Fantastic project, thank you!

I've noticed quite a few parts are not in the spreadsheet provided by JLC. Would it make sense to do a "community library" of those? Or maybe support for having an additional list locally?

Happy to put together a PR if that's something you would be open to.

Here are some of the parts missing:

C91702
C305350
C91702

in reply to flpvsk

@flpvsk A community library would be amazing, that's also the only option I think for having non-jlc parts in this system so it works for other suppliers. I'm not sure how it would work though.

There's a lot of parts so doing a database in git is probably painful. The other option would be running a webservice for a centralized parts database.

in reply to Martijn Braam

Oh my, git would be so cool, if it can handle the job. Folder per manufacturer, file per part number, contents with part properties including marketplace part numbers. That'd be super easy to contribute to.

I have no idea how bad would it get performance-wise though. Maybe we could ask git experts here about handling tons of small files that change rarely?

Alternatively there must be a good open database solution for crowdsourcing. I don't know much about that space.