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)
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.
Bugfixes
Fixed problem that frontend assets could not be loaded properly if serving Part-DB under a prefixed path (issue #824)
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.
New features / Improvements
Updated CKEditor to v41, which should load faster
Show when a part already exists, when trying to add new parts from info provider (thanks to @Treeed)
Allow to scan the EIGP114 barcodes on digikey and mouser parts to directly reference parts (thanks to @Treeed)
Added the possibility to decode and view the content of barcodes (especially EIPG114)
Allow to map categories from info providers to local categories, using the "alternative names" of local categories
Highly improved barcode scanner, which should be much faster and more reliable and even a bit smaller than the old one
Allow to directly save the current label options to a label profile (see issue #806)
Do not preselect a category when creating a new part, so that users must explicitly select a category and not save one accidentally
Bugfixes
Fixed LCSC provider (see issue #790), thanks to @vvekic
Fixed sizing of text in the label editor field
Fixed "Scan from image" feature of barcode scanner
Fixed problem that API PATCH operations to parts touched unrelated fields (issue #800)
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
Updated docker container PHP to PHP 8.3
Use a different format for log files (plain text instead of JSON encoding). This should be easier to read and output shorter lines (see #781)
Fixed problem that PostgresSQL searches were case sensitive. Now they are case-insentive to have the same and more useful behavior as on SQLIte and MySQL (see #784)
Improvements
Allow usernames to contain @ sign (as long as it is not the first char) to allow email addresses as username (see #772)
Bugfixes
Fixed errors, when accessing Part-DB via link-local IPv6 addresses (#782)
Allow longer error lines in docker container. (#781)
Fixed problem that SAML users could not access API via tokens (#765)
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.
Security fixes
Attention: This version contains updated versions of dependencies, that fix security issues under certain conditions. The only one that should be relevant for Part-DB is CVE-2024-50340 which is only possible if you have the register_argc_argv PHP option enabled. This should be disabled by default on most systems, still you should update Part-DB to the latest version, to avoid any risks.
Improvements
Fixed typos in translation (thanks @mkne, PR #757)