If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Bug fixes
Updated watchtower image in watchtower config example (#1363)
Fixed problems of invalid links when AI Web Extractor encounters non-absolute links
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New features
Added AI powered website scraper to provide detailed part infos even from webshops with little structured data
Added feature to force refresh of info provider search and results, and to skip delegation to specialized providers when using "create part from URL"
Add Docker update support via Watchtower integration by @Sebbeben in #1330
Add Quick Apply and batch update to bulk info provider import by @Sebbeben in #1316
Add 'Add stock' button to part stock info page by @kernchen-brc in #1352
Added 250 and 500 entry to table lengthes menus
Bug fixes
Fix sort order after column reorder on page reload by @wschopohl in #1346
Fixed error making editing of users impossible
Fixed error with converting existing DB to postgresql database (#1362)
Fixed error that original category were changed, if category cloned and eda info changed (#1341)
Keep part table length selection across page loads (#1350)
This version requires nodejs 22+ for frontend building. Check that you have it installed, before attempting automatic upgrade.
Tip
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Changes
Frontend building now requires at least nodejs 22.
For security hardening reasons Part-DB's generic web provider and the attachment download feature cannot download from local network IPs to avoid SSRF attacks. If you require internal attachment download, you can enable it via an env option.
New features
Make format06 barcode checking more resiliant for non-standard conform labels and scanners by @mkne in #1321
Implement parsing of TME QR codes by @alufers in #1324
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Improvements
Removed MPN fallback from LCSC barcode scanner, the SPN field is used instead for part matching (#1302)
Automatically detect the delimiter on generic CSV BOM imports
Fixed problem of GenericWeb info provider when used behind traefik (#1296)
Fixed 500 error, when mapping in generic CSV BOM import fails (#1298)
Fixed 500 error with displaying part prices, when a user has a currency preference different of base currency, and there is no conversion rate known for it (#1317)
After upgrade, you need to run php bin/console doctrine:migrations:migrate (or equivalent) as webserver user after upgrade.. If you are running a docker container, use sudo docker exec --user=www-data partdb php bin/console doctrine:migrations:migrate, or sudo -E inside the docker container, to ensure that the migrations are applied to the correct database.
Tip
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New feautures
Sidebar trees keep track of page navigations. If you open a certain category, the treenode will be hightlighted
Show a "Show password" toggle on all password inputs, including login form
Made form fields wider on large monitors, to remove useless whitespace
Reset opcache after update manager update (thanks @Sebbeben, PR #1288)
Allow to create manual backups and download them from the WebUI (thanks @Sebbeben, PR #1255)
Added user_barcode_filter to API (thanks @MayNiklas, PR #1280)
Show manufacturing status in project BOM table (thanks @mkne, #1289)
Create a part lot with quantity, user barcode and order number based on digikey, lcsc or mouser barcode, to reduce amount of manual input
Bug fixes
Do not scroll sidebar to top, when clicking a tree node
Fixed description field on KiCAD 9.0.5 and 9.0.6 (#1289)
Generate correct url for part lots barcode content label placeholders (#1268)
Correctly import files, where only children elements are specified and no parent field (#1272)
Clear the input after selecting an option in tomselect (#1264)
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Bug fixes
Security hardening for some endpoints
Fixed minor unauthorized information leackage in IPN generation endpoint (#1283)
Fixed problem with creating digikey parts from barcode when it contained a CREF (#1283)
Use cache:pool:clear --all for more thorough cache clearing in update process
Moved settings cache to cache.system adapter, to ensure its cleared on cache:clear (prevents #1279)
Fixed problem that flash messages were not shown in admin pages
After upgrade, you need to run php bin/console doctrine:migrations:migrate (or equivalent) as webserver user after upgrade.. If you are running a docker container, use sudo docker exec --user=www-data partdb php bin/console doctrine:migrations:migrate, or sudo -E inside the docker container, to ensure that the migrations are applied to the correct database.
Tip
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New features
Allow to add parts from barcode scans of LCSC, digikey and other vendor labels (thanks @swdee)
Allow to scan LCSC labels
Added Amazon info provider via Canopy API
Added an optional HTML sandbox for attachments, allowing to view interactive BOM HTML files inside Part-DB (#1150)
Add option to disable special character keybindings (#1251, thanks @MayNiklas)
Improve working with an external barcode scanner, allow scanning barcodes from everywhere
Make KiCad API better cachable (#1241, thanks @Sebbeben)
Make parameters and order informations visible in KiCad (#1241, thanks @Sebbeben)
Show EDA value and reference in part tables (#1266, thanks @hrueger)
After upgrade, you need to run php bin/console doctrine:migrations:migrate (or equivalent) as webserver user after upgrade.. If you are running a docker container, use sudo docker exec --user=www-data partdb php bin/console doctrine:migrations:migrate, or sudo -E inside the docker container, to ensure that the migrations are applied to the correct database.
Tip
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Bug fixes
Fixed problem that stocktake date of part lot was required when editing part (#1250)
Fixed problem that part tables had wrong sorting on initial loading
Fixed german translations related to update manager
After upgrade, you need to run php bin/console doctrine:migrations:migrate (or equivalent) as webserver user after upgrade.. If you are running a docker container, use sudo docker exec --user=www-data partdb php bin/console doctrine:migrations:migrate, or sudo -E inside the docker container, to ensure that the migrations are applied to the correct database.
Tip
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New features
Allow to set GTIN / EAN numbers for parts
Some info providers allow to provide GTIN infos
Allow to mark if supplier prices contain VAT or not. This is especially useful in combination with info providers
Allow to restrict on which element types attachment types can be applied. For example the "Avatars" attachmen type can only be shown on user attachments
Added ability to stocktake part lots from info page. This easily allows for setting a specific amount, instead of just adding/removing from an database value. The stocktake date is stored, to give a hint on how reliable the amount left is.
Delegate part retrieval to buerklin info provider when an buerklin URL is given (@mkne, PR #1235)
Added API endpoint for label generation (@MayNiklas, PR #1234)
Added functions to twig labels to retrieve associated parts. This allows to print all parts contained in a storage location (#1239)
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New features
Experimental update manager, to update Part-DB from the web interface (thanks to @Sebbeben, PR #1217)
Added Conrad info provider
Added a generic info provider, to retrieve basic part infos from many shop URLs
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Improvements
When using the "upload files" button automatically determine a fitting attachment type based on extension
Support SPN columns for all suppliers as columns in BOM imports, not only LCSC (PR#1208, thanks @MayNiklas)
Bug fixes
Disable the ID search by default, like intended in PR #1184
Use correct language for sidebar trees, even if no user is logged in
Prevent ordering of extra column in log tables, as this errors on Postgres and has no real use
Show an error popup instead of a 500 page when info provider retrieval fails
Added clear button for part select input in BOMs (#1156)
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New features
Added console command to change database platform (e.g. from sqlite to mysql, or mysql to postgresql)
Added a ability to search for part IDs from searchfields (thanks @kernchen-brc, #1184)
Improvements
Do not mark new categories excluded from simulation in KiCAD, to avoid annoying symbols in KiCad (thanks @lukas-runge , #1192)
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New features
Added info provider for Buerklin (thanks to @mkne, #1151)
Show part IDs in project BOMs
Improvements
Use more performant hash algorithms for cache keys
Increase label generator PDF preview height to show PDF toolbar (@mkne , #1171)
Show info provider capabilities in fixed order
Bug fixes
Fixed exception if DigiKey has no media for a part (#1154)
After upgrade, you need to run php bin/console doctrine:migrations:migrate (or equivalent) as webserver user after upgrade.. If you are running a docker container, use sudo docker exec --user=www-data partdb php bin/console doctrine:migrations:migrate, or sudo -E inside the docker container, to ensure that the migrations are applied to the correct database.
Tip
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New features
Added the ability to define custom part states (PR #1053, thanks to @webdevinition)
Added the ability to automatically suggest and generate IPNs (PR #1054, thanks to @webdevinition)
Added experimental ability to rename datastructure types with the new synonym system, which allows you to define domain specific names for concepts of "parts", "categories", etc. (thanks @webdevinition)
Improvements
Improved ability to determine category from info provider (#1113)
Do not require a trailing slash for DEFAULT_URI (#1118)
Define preview images for partkeepr imports (#1115)
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Tip
You can help to translate Part-DB to other languages. See this post for more info.
New features
Load translations for Ckeditor
Added an option to select which languages should be shown in the language dropdown menu
Added hungarian translations (thanks to @Krissz, PR#1081)
Added option to configure if part tables for categories, etc. should include child categories by default (#1077)
Improved alignment of part parameter tables (#1066)
Show an better error message if Digikey provider needs OAuth reconnection
Bug fixes
Fixed problem when trying to geneate multiple labels (#1070)
Made settings category titles translatable (#1037)
After upgrade, you need to run php bin/console doctrine:migrations:migrate (or equivalent) as webserver user after upgrade.. If you are running a docker container, use sudo docker exec --user=www-data partdb php bin/console doctrine:migrations:migrate, or sudo -E inside the docker container, to ensure that the migrations are applied to the correct database.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Tip
You can help to translate Part-DB to other languages. See this post for more info.
New features
Added xlsx/xls import/export for parts (thanks to @barisgit, PR #1036)
Allow to update many parts at once from information providers (thanks @barisgit, PR #1036)
Optimized part tables performance
Bug fixes
Fixed problem with mouser and chinese yuan as currency (#1045)
Miscellaneous
Improved translations
Updated dependencies
Use php's native lazy objects on PHP8.4+, this should help to reduce performance overheads
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Tip
You can help to translate Part-DB to other languages. See this post for more info.
Bug fixes
Fixed problem that default info provider option could not be empty (#1032)
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Tip
You can help to translate Part-DB to other languages. See this post for more info.
Bug fixes
Fixed problem that tree views were not properly highlighted anymore
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Tip
You can help to translate Part-DB to other languages. See this post for more info.
New features
Added new exchange rate provider, that allow for more foreign currencies without need for fixer.io
Show what permissions a user is lacking in case of an access denied message
Do not mark relative links in markdown as external and open in new tab (thanks @d-buchmann)
Added option to import BOM files from KiCAD schematic editor and generic CSV files (thanks @barisgit)
Added an button to update label profiles directly from the label generator.
Allow to customize what items get shown at homepage (#470, #894)
Allow to hide version number at homepage
Allow to disable the extraction of parameters from part notes and description (#747)
Allow to select default info providers for a provider search (#556)
Made image size in part tables configurable
Made part table action bar sticky and floating to make it better visible and improve UX
Bug fixes
Allow import of label profiles (thanks @d-buchmann)
Part-DB now requires PHP 8.2 or higher. It is recommended that you read the upgrade guide from v1 to v2 before upgrading.
Part-DB 2.0.2
This upgrade introduces a new web based configuration system. Existing configuration using environment variables will continue to work. If you want to configure these parameters via the WebUI in the future, an additional migration step is required. See the upgrade guide for more information.
Bug fixes
Properly pass environment variables to Part-DB in jbtronics/partdb1 docker image to prevent startup issues (issue #1006)
Improvements
Updated translations
Do not pollute docker error logs with deprecation notices
Part-DB now requires PHP 8.2 or higher. It is recommended that you read the upgrade guide from v1 to v2 before upgrading.
Part-DB 2.0.1
This upgrade introduces a new web based configuration system. Existing configuration using environment variables will continue to work. If you want to configure these parameters via the WebUI in the future, an additional migration step is required. See the upgrade guide for more information.
Bug fixes (compared to 2.0.0)
Fixed broken english translations
Fixed problem that wrong column was sorted after columns were reordered in a table
Part-DB now requires PHP 8.2 or higher. It is recommended that you read the upgrade guide from v1 to v2 before upgrading.
Part-DB 2.0.0
This upgrade introduces a new web based configuration system. Existing configuration using environment variables will continue to work. If you want to configure these parameters via the WebUI in the future, an additional migration step is required. See the upgrade guide for more information.
Breaking changes
Part-DB now requires at least PHP 8.2 or higher. If you are still using PHP 8.1 you need to upgrade PHP first
Nodejs 20 or higher is now required
The config/banner.md file does not exist anymore. If you wanna customize the banner, either do it via the WebUI or the BANNER env.
The parameters partdb.sidebar.items, partdb.sidebar.root_node_enable and partdb.sidebar.root_expanded in config/parameters.yaml,
were removed. You can configure them now directly in the admin interface.
New features
Introduced capability to configure system settings and info providers via the WebUI. No need to work with environment variables anymore
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Tip
There is a new experimental docker image, which is much faster. See this post for more info.
Tip
You can help to translate Part-DB to other languages. See this post for more info.
Bug fixes
Pass the proxy related settings to the docker application (issue #1001)
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Tip
There is a new experimental docker image, which is much faster. See this post for more info.
Tip
You can help to translate Part-DB to other languages. See this post for more info.
Bug fixes
Fixed a potential denial of service issue related to user avatars (thanks to @NaklehZeidan21)
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Tip
There is a new experimental docker image, which is much faster. See this post for more info.
Tip
You can help to translate Part-DB to other languages. See this post for more info.
New features
Added option to disable image overlay on part detail pages (#960, thanks @d-buchmann)
Allow to use the percentage sign directly as unit in parameters, without needing to latex escape it
Pass supplier part number info to KiCad as custom field (#955, thanks @barisgit)
Add fields for KiCost KiCad plugin, so that you can easily create a BOM from the information (#910)
Bug fixes
Fixed typos in info provider description (#942, thanks @d-buchmann)
Link project root node to edit project page instead of listing all parts (#957, thanks @d-buchmann)
Fixed problems if parameter value was 0 (#959, thanks @d-buchmann)
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Tip
There is a new experimental docker image, which is much faster. See this post for more info.
Tip
You can help to translate Part-DB to other languages. See this post for more info.
Security fixes
Until this version, users could upload SVG files containing JS code, that would be executed if a user opened the SVG in a new tab, allowing for a XSS vulnerability. This was only possible if the SVG files were explicitly opened in a new tab, if the file was embedded inside a Part-DB tab, then there was no risk.
Since this version, SVG files gets sanitized during upload, to prevent any JS code execution. If you have existing SVG files, you can sanitize them, by running the console command php bin/console partdb:attachments:sanitize-svg.
If you are using Part-DB with nginx, you should add the following block to your server configuration, to further harden it by setting a content security policy for SVG files.
# Set Content-Security-Policy for svg files, to block embedded javascript in there
location ~* \.svg$ {
add_header Content-Security-Policy "default-src 'self'; script-src 'none'; style-src 'self' 'unsafe-inline'; img-src 'self' data:; frame-ancestors 'none';";
}
For apache, this is done automatically in the .htaccess file of Part-DB.
New features
Added barcode placeholders for C93 and datamatrix barcodes (#931, thanks to @monoxide13)
From this version Part-DB uses the digikey v4 API. If you have an existing API key, make sure to select the Product Information V4 capability on digikey's api console. Otherwise the digikey info provider will not function!
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Tip
There is a new experimental docker image, which is much faster. See this post for more info.
Tip
You can help to translate Part-DB to other languages. See this post for more info.
Changes
Use Digikey V4 API for digikey provider (by @Danixu in #875)
New features
Added a way to change the location of parts as batch action, as long as they contain only one lot.
Added a command to download all external-only attachments to the local file system (php bin/console partdb:attachments:download)
Added an experimental automigration feature to docker image. Set DB_AUTOMIGRATE to true in your docker-compose file to automatically apply database migrations on container startup.
Bug fixes
Fixed bugs for pollin info provider
Workaround a bug in KiCAD which could cause a crash (#878)
Use own CA bundle for element14 provider, to workaround missing CA in debian (#891, #866)
Fixed problems with mouser info provider, where part numbers could not be resolved to a unique part (#888, #616)
Fixed 500 if internal attachment path was not resolvable to an URL (#898)
Fixed problem that global_theme config param was ignored (#880)
Fixed problem, that categories did not appear in KiCAD, even though they contained visible parts (#885)
Make database migrationn more compliant with SQL standard (#900)
If you are upgrading from 1.15 or earlier, you need to run php bin/console doctrine:migrations:migrate (or equivalent) as webserver user after upgrade. This is not required when coming from 1.16.0. If you are running a docker container, use sudo docker exec --user=www-data partdb php bin/console doctrine:migrations:migrate, or sudo -E inside the docker container, to ensure that the migrations are applied to the correct database.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Tip
There is a new experimental docker image, which is much faster. See this post for more info.
Tip
You can help to translate Part-DB to other languages. See this post for more info.
Database schema changed: You need to run php bin/console doctrine:migrations:migrate (or equivalent) after upgrade! If you are running a docker container, use docker exec --user=www-data partdb php bin/console doctrine:migrations:migrate, or sudo -E inside the docker container, to ensure that the migrations are applied to the correct database.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Tip
There is a new experimental docker image, which is much faster. See this post for more info.
Tip
You can help to translate Part-DB to other languages. See this post for more info.
New features
Added info providers for the german vendors reichelt.com and pollin.de. They use webscraping of the shop pages, as no official API is provider. Use at your own risk!
Improved inputting/editing of attachment parts (made it easily editable and highlightable) (PR #849@Treeed)
Updated KiCAD EDA library list for EDA info autocomplete to latest KiCad version
Improved attachment system. Attachments now keep the external URL info if a file was downloaded, so that you can track that later (PR #848, @Treeed)
Added additional sorting and filter possibilities in attachments table
Use newer farnell/element14 API version. This allows to retrieve the correct URL to products in farnell shop and gives us additional part description that will be put into the notes field in Part-DB
Bug fixes
Fixed attachment statistics for sqlite (PR #847@Treeed)
Fixed problem with duplicate fields in jsonapi API schema description (issue #862)
Fixed problem with wrong/missing API docs in some cases (issue #851)
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
If you like Part-DB, please consider donating to help further development. See the sponsor button on the homepage.
There is a new experimental docker image, which is much faster. See this post for more info.
You can help to translate Part-DB to other languages. See this post for more info.
Changes and Improvements
Deprecated GET_GROSS_PRICES env for TME provider with TME private access token, as it is ignored then and whether VAT is included or not in prices depends on account type
Removed to show "All" entries in a log table, as the log can easily contain thousands of entries, that would most likely in an out of memory exception on server (see issue #835)
If an info provider returns multiple attachments or parameters with the same name, they will be suffixed with a number (e.g. Param, Param (2), Param (3), etc.), so that they can be saved, without manually needing to edit their names (as Part-DB wants a unique name for them). See issue #840
Bug fixes
Prevent error with TME info provider, if using TME private access key (issue #838)
Fixed exception when exporting an empty list (issue #836)